所以我在下面有这段文字:
#nama:sulaiman haqa#alamat:kepanjen#kelamain:L#hobi:tidur#
我需要在
:
和#
之间找到包含某些关键字的文本。例:
Search keyword: haq
result: sulaiman haqa
在上面的示例中,字符串
sulaiman haqa
满足要求:它在:
和#
之间,并且具有haq
关键字。我使用此正则表达式在
:
和#
之间找到单词,但我不知道如何放置contains条件。(?<=\:).*?(?=\#)
请帮忙。
最佳答案
您可以使用此正则表达式:
(?<=:)[^#]*haq[^#]*(?=#)
RegEx Demo
RegEx详细信息:
(?<=:)
:在后面断言前一个字符是:
[^#]*
:匹配非#
的任何字符中的0个或多个haq
:匹配文本haq
[^#]*
:匹配非#
的任何字符中的0个或多个(?=#)
:先行断言下一个字符是#
关于regex - 正则表达式查找某些字符之间的匹配并包含特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56829896/