RegEx查找所有出现的某些字符,但不包括某些文本部分

时间:2017-09-22 20:40:54

标签: regex

我正在尝试编写一个正则表达式来查找所有出现的&#39; 字符,但要排除以[或&lt; <并以]或&gt;结束。

以下是示例文字:

This is some text with ' character to find and [text to 'exclude' with letters and numbers 0-9 '' ] and another part of text with 'more characters' to find <and 'more to' exclude> and again some text with 'character' to find

我尝试使用负前瞻的正则表达式:

(?!((\[|<)[\s\S]*?(\]|>)))'

但它不起作用。

几个小时后我的想法用完了:(。任何帮助都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

您可以使用

\[.*?\]|<.*?>|(')

使用捕获的组(请参阅a demo on regex101.com)或使用(*SKIP)(*FAIL)版本,如果您的引擎(PHP,Perl,PCRE一般,......)支持它:

(?:\[.*?\]|<.*?>)(*SKIP)(*FAIL)|'

请参阅a demo for the latter here