我是正则表达式的新手.
是否可以在满足特定条件的单词之前匹配所有内容:
例如
这是一个测试 - - +++这是一个测试
我希望它遇到一个以大写字母开头的单词,下一个字符是小写字母.这构成了一个恰当的词.然后我想删除那个词之前的所有内容.
上面的例子应该产生:这是一个测试
我只想要这个处理,直到它找到正确的单词,然后停止.
任何帮助,将不胜感激.
谢谢
Tom*_*lak 48
更换
^.*?(?=[A-Z][a-z])
Run Code Online (Sandbox Code Playgroud)
用空字符串.这适用于ASCII输入.对于非ASCII输入(Unicode,其他语言),适用不同的策略.
说明
.*? Everything, until
(?= followed by
[A-Z] one of A .. Z and
[a-z] one of a .. z
)
Run Code Online (Sandbox Code Playgroud)
支持Java Unicode的变体将是这样的:
^.*?(?=\p{Lu}\p{Ll})
Run Code Online (Sandbox Code Playgroud)