Regex 正则表达式匹配包含点的单词?

Regex 正则表达式匹配包含点的单词?,regex,Regex,假设我想匹配可能包含点的URL 我使用的解析器有一个“url contains”特性,因此如果我键入“you”,它将匹配“youtube.com/blahblah”和任何其他包含“you”的url 然而,如果我使用“youtube”,它将匹配“youtube.com”,而不是“youtu.be” 例如,如果我想匹配apple、banana、app.le、banan.a和ba.nana,而不是orange或ora.nge,我需要在(apple | banana)中添加什么来匹配这些包含点的单词呢?

假设我想匹配可能包含点的URL

我使用的解析器有一个“url contains”特性,因此如果我键入“you”,它将匹配“youtube.com/blahblah”和任何其他包含“you”的url

然而,如果我使用“youtube”,它将匹配“youtube.com”,而不是“youtu.be”


例如,如果我想匹配apple、banana、app.le、banan.a和ba.nana,而不是orange或ora.nge,我需要在(apple | banana)中添加什么来匹配这些包含点的单词呢?

你需要在每对字母之间匹配可选点:

(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)
虽然这将允许任何数量的点。要将点数限制为最大值1,请添加一个负前瞻:

(?!.*?\..*?\.)(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)

您必须在每对字母之间匹配可选点:

(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)
虽然这将允许任何数量的点。要将点数限制为最大值1,请添加一个负前瞻:

(?!.*?\..*?\.)(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)

您必须在每对字母之间匹配可选点:

(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)
虽然这将允许任何数量的点。要将点数限制为最大值1,请添加一个负前瞻:

(?!.*?\..*?\.)(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)

您必须在每对字母之间匹配可选点:

(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)
虽然这将允许任何数量的点。要将点数限制为最大值1,请添加一个负前瞻:

(?!.*?\..*?\.)(a\.?p\.?p\.?l\.?e|b\.?a\.?n\.?a\.?n\.?a)

(app\.?le | banan\.?a | ba\.nana)
我会尝试稍微扭转这个问题,而不是直接用正则表达式解决它。去掉点,然后做正则表达式。显然,这取决于您的具体情况。
(app\.le | banan\.a | ba\.nana)
我会尝试稍微扭转这个问题,而不是直接用正则表达式解决它。去掉点,然后做正则表达式。显然,这取决于您的具体情况。
(app\.le | banan\.a | ba\.nana)
我会尝试稍微扭转这个问题,而不是直接用正则表达式解决它。去掉点,然后做正则表达式。显然,这取决于您的具体情况。
(app\.le | banan\.a | ba\.nana)
我会尝试稍微扭转这个问题,而不是直接用正则表达式解决它。去掉点,然后做正则表达式。显然这取决于你的具体情况。