我有一个软件,给定一个正则表达式,可以执行查找和替换。它不是一种编码语言,因此除正则表达式之外的任何建议都不会有用。我搜索了一个表达式,它将帮助我找到除“pattern”之外的所有文本。模式不一定在字符串的开头或结尾,可以多次出现。鉴于字符串:
String xml=database.sqlEjectXML("SELECT * FROM food;");
和模式:
red blue yellow green orange purple blue black green white
在线上出现两次的模式,我试图选择除了之外的所有内容。 (以便删除所选的并仅留下图案)。 我试过了:
blue.*?green
但最后还是留下了“白色”。任何帮助,将不胜感激。
答案 0 :(得分:2)
它通常是这样的
查找(?:(?!blue.*?green).)*(blue.*?green)?
替换$1
扩展
(?:
(?! blue .*? green )
.
)*
( blue .*? green )? # (1)
输出
blue yellow greenblue black green