Java 正则表达式澄清

标签 java regex

我有一个像这样的字符串:

<RandomText>
executeRule(x, y, z)
<MoreRandomText>

我想要完成的任务如下:如果这个 executeRule 字符串存在于更大的文本 block 中,我想获取它的第二个参数。

我怎样才能做到这一点?

最佳答案

更大的文本 block 是什么意思?

如果您想从该表达式中提取第二个参数,则类似于

executeRule\(\w+,\s*(\w+),\s*\w+\)

第二个参数保存在捕获组 $1 上。

请记住,要在 Java 中使用此表达式,您需要转义“\”。另外,我只是假设\w 足以匹配您的参数,这取决于您的特定规则。

如果您在 Java 中实际使用正则表达式方面需要一些帮助,您可以引用很多资源,我发现本教程相当简单,它解释了基本用法: http://www.vogella.de/articles/JavaRegularExpressions/article.html

关于Java 正则表达式澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7992663/

相关文章:

r - 从 R 中的字符向量中提取数字和下一个字符串

java - Maven:找出是在 32 位还是 64 位 JVM 中运行

Python正则表达式匹配文本后的数字

java - Java 中用于排除超过 2 "=="的模式的正则表达式

mysql - 在不使用正则表达式或 rlike 的情况下搜索确切的词组

python - 正则表达式: How to name a group using match result

java - 发送带有附件的电子邮件

java - 在 Netty 中解析具有返回值的 ChannelPromise?

java - Android 模拟 GPS 卫星(不仅仅是位置)

Java:ArrayList 以及自动完成组合框的建议短语