我希望使用正则表达式在特定单词(B)之后得到一个单词(A)。但是在B字之后可能会有一些空格,或者B字在字符串的末尾。
例如:
两行:
'This is special sentence'
和
'This is special'
使用正则表达式我想在'是'之后得到这个词。因此,在第一行中,结果必须是“特殊的”,而在第二行中,结果必须是“特殊的”。
我尝试过类似的事情:
^.*class\ (?<classname>.*)\w.$
但是这个正则表达式我得到'特殊'和'特殊句子'。
答案 0 :(得分:0)
(?i)(?<=(is\s))special
在您的示例中,special
后获取is
。你还没有指定一种语言,所以这就是我能给出的。将special
替换为您要查找的单词,将is
替换为您要查找的单词前面的单词。
答案 1 :(得分:0)
您可以使用此正则表达式:
\bis (\w+)
它将捕获is
之后的单词。
具有lookbehind的替代版本:
(?<=\bis )(\w+)