java - 提取消息中包含连接字符的字符串

标签 java regex pattern-matching

我正在尝试从以下类型的字符串中提取消息,

Error_Message('The value 1,2 and 3 that you have entered is invalid.');

使用以下正则表达式,

\s*(\w+):\s*(?:'\s*(?:\|\S*)'\s*|[^'])+'

Could be tested here

但问题是这在某些情况下会失败,例如,

General_Message('Sample message value :p you have '||CHAR(10)||'entered is invalid.', FunctionY('xyz', param2) );

General_Message(' The percent may not be negative.',FunctionZ('xyz', parameter2));

需要你们的支持来解决这个问题。

提前致谢!

最佳答案

我认为你需要这个:

(?<=General_Message\()'[^.]+

此处演示:http://regex101.com/r/fF0iV1

关于java - 提取消息中包含连接字符的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23265444/

相关文章:

string - lua 模式,排除不适用于字符串结尾

java - 是否可以在 JNI 库中将类路径设为 @rpath?

java - 是否存在用于消息传递基础架构的开源项目?

Java Spark框架: Route to a specific static file

java - 服务器回复客户端消息由于关闭套接字而失败 - Java 客户端-服务器示例

python - 如何使用正则表达式在Python中删除模式之前和之后的空格?

Python Regex - 删除特殊字符但保留撇号

java - 如何用这个正则表达式拆分字符串?

erlang - 为什么在这个函数中使用了 "when"?

Haskell:模式匹配、标识符和运算符