2015-10-01 33 views
0

希望有人可以帮助我把这个翻译成正则表达式,或指向正确的地方。大多数的问题是关于如何检查空白或如何匹配的模式,而不是执行以下操作:正则表达式匹配模式只有非空

  1. 地带的所有空的空间that're后面什么都没有(捕捉到有人进入多个空格的想法..这对我们来说是一个空白)
  2. 如果空白剥离后,然后什么也不做
  3. 如果非空,再搭配模式XYZ

我们知道,我们的模式。 XYZ的东西的作品。不起作用的是,这已成为所需的模式匹配。我们希望只有在该值非空白时才能验证此模式。我们如何在相同的正则表达式中捕获它?

只是为了澄清:语言是Javascript。

+0

第一:正则表达式无关乎代码语言,第二:本网站是为了帮助,而不是为了你的工作,第三次尝试https://regex101.com/通过你自己让你的注册表exp – Froggiz

+0

可以您请展示您的预期结果以及您尝试的结果。很多爱 –

+1

@Froggiz,语言可以决定正则表达式的方言。您链接的非常正规的演示工具可以在PCRE,JavaScript和Python之间选择。 – ikegami

回答

0

正则表达式并不总是能够实现一切的魔法东西。对于第2点,只需使用标准的JavaScript:

str = str.trim(); 
if (str && /xyz/.test(str)) { 
    // Do fabulous stuff here 
} 

无论如何,如果你想为一个正则表达式,你可以试试这个:

/^[\t\n\r ]*XYZ[\t\n\r ]*$/ 

这个规则表达式不会为空是有效的串。当然,除非XYZ类似.*