2014-06-12 321 views
0

我需要找到一个正则表达式来查找包含一些特定字符的字符串,例如,如果一个字符串包含全部三个字符“t”,“m”和“p”(分开和随后的)。检查一个字符串是否包含特定字符

有什么想法吗?非常感谢

+3

'T * M * p'似乎是不够的 –

+0

阿维纳什的答案工作得非常好,但在某些情况下不工作:。 会话%5Btemp%5D “TEMP” 你知道任何方式适应它? – hasmet

+0

我试过Avinash,但结果是一样的 – hasmet

回答

2
.*t.*m.*p.* 

如果你只想要一个t,m和p。

+5

假设'{1}',不需要添加额外的字符。 – Sam

+1

或^ t {1}。* m {1}。* p {1} $如果您希望字符串以t开头并以p结尾。 ^代表第一个字符,$代表结束字符。 – insilenzio

+0

是否可以在这种情况下插入三个字符是大写的可能性?例如,如果我有“Tmp”,这个字符串不匹配 – hasmet

0

地点T,M,字边界内的p个字,

\bt[\w,]*m[\w,]*p[\w,]*\b 
-1
.*t+.*m+.*p+.* 

.*任何字符0大于0倍以上。
t+ t字符至少1次。
m+ m个字符至少1次。
p+ p字符至少1次。

+1

文字上的'+'是不必要的,因为OP似乎只关心每个字母是否出现(你的表情仍然有效,但在那里可能是一些额外的步骤)。 – Sam

相关问题