java - 匹配字符串结尾但不匹配换行符?

标签 java regex

在java中,是否可以使用Pattern.DOTALL选项并搜索带有\n的行来创建一个正则表达式来匹配字符串的末尾但不换行符?

示例:

1)

aaa\n==test==\naaa\nbbb\naaa

2)

bbb\naaa==toast==cccdd\nb\nc

3)

aaa\n==trick==\naaaDDDaaa\nbbb

我要匹配

\naaa\nbbb\naaa

cccdd\nb\nc

但是,在第三个示例中,我不想在 DDD 之后匹配文本。

\naaa

最佳答案

是的,有。例如,(?-m)}$ 将匹配 Java 源文件末尾的右大括号。重点是禁用多行模式。您可以按照我的说明进行禁用,或者通过在 Pattern 实例上设置适当的标志来禁用。

更新:我相信当您实例化 Pattern 时,多行默认处于关闭状态,但在 Eclipse 的正则表达式查找中处于打开状态。

关于java - 匹配字符串结尾但不匹配换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10521867/

相关文章:

regex - 如何在 Perl 中进行条件贪婪匹配?

java - Java 中以数字开头,然后是点和逗号的字符串

java - 尽管在 .andReturn 中设置了一个新对象,EasyMock expect 方法总是返回 null

java - 如何从 tflite 模型输出形状 [1, 28, 28,1] 的数组作为 android 中的图像

java - 创建类加载器以从字节数组加载 JAR 文件

regex - ack:通过正则表达式从搜索中排除特定目录

python - 使用正则表达式将字符串插入文件路径字典中

java - 文件输入/输出

java - 编写并发代码、非阻塞代码

python-3.x - 每 n 个字符拆分一个 pandas 列