[英]How to perform AND operator in a C# regex
我有兩個用於不同目的的正則表達式。
^(?:(?!(?:abc|bcd|cde|def|efg|fgh|ghi|hij|ijk|jkl|klm|lmn|mno|nop|opq|pqr|qrs|rst|stu|tuv|uvw|vwx|wxy|xyz|012|123|234|345|456|567|678|789|(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)'\'1{2})).)
此正則表達式用於控制字符串不能包含3個連續字符,例如abc , 123
^['\'x20-\x7E]+$
這個正則表達式用於控制字符串不能包含非英語字符,例如ş , ü , ı , ğ ,...
我想將這兩個規則結合起來。 他們兩個都必須執行。 我試圖在它們之間添加AND運算符,但&不允許。
我怎樣才能做到這一點? &的正則表達式替代中是否有任何運算符? 如果沒有,我該如何以不同的方式完成這項工作?
編輯:有人無法理解我的問題,所以我決定詳細解釋。
(^(((?:abc|bcd|cde|def|efg|fgh|ghi|hij|ijk|jkl|klm|lmn|mno|nop|opq|pqr|qrs|rst|stu|tuv|uvw|vwx|wxy|xyz|012|123|234|345|456|567|678|789|(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)'\'1{2})).)*|^['\'x20-\x7E]+$)
您可以從https://regex101.com/嘗試使用此正則表達式
這不是我想要的方式。 不允許連續3個字符,但不能檢查非英語字符。 例如,如果您鍵入ğğğ,那將被接受。 我放| 他們之間的運算符。 我知道錯了。 我必須放置AND運算符,但不知道如何在正則表達式中使用AND運算符? 這實際上是主要問題。
您可以使用以下內容:
^(?!.*(?:abc|bcd|cde|def|efg|fgh|ghi|hij|ijk|jkl|klm|lmn|mno|nop|opq|pqr|qrs|rst|stu|tuv|uvw|vwx|wxy|xyz|012|123|234|345|456|567|678|789|([\da-z])\1{2}))[\x20-\x7E]+$
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.