簡體   English   中英

如何匹配正則表達式中的多個單詞

[英]How to match multiple words in regex

只是一個簡單的正則表達式,我不知道如何寫。

正則表達式必須確保字符串匹配所有3個單詞。 我看到如何使它匹配3中的任何一個:

/advancedbrain|com_ixxocart|p\=completed/

但我需要確保字符串中包含所有 3個單詞。

這是單詞

  1. advancebrain
  2. com_ixxocart
  3. P =完成

使用前瞻斷言

^(?=.*advancebrain)(?=.*com_ixxochart)(?=.*p=completed)

如果所有三個術語都存在,則匹配。

您可能希望在搜索項周圍添加\\b工作邊界,以確保它們匹配為完整單詞而不是其他單詞的子字符串(如advancebraindeath ),如果您需要避免這種情況:

^(?=.*\badvancebrain\b)(?=.*\bcom_ixxochart\b)(?=.*\bp=completed\b)
^(?=.*?p=completed)(?=.*?advancebrain)(?=.*?com_ixxocart).*$

花了太長時間測試和精煉= /哦好..仍然會發布我的答案

使用前瞻:

(?=.*\badvancebrain)(?=.*\bcom_ixxocart)(?=.*\bp=completed)

訂單無關緊要。 這三個都是必需的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM