"^linux$ || ^windows$ || ^solaris$ || ^macos$"
我在codelab中做正则表达式。它要我:"写一个正则表达式,选择包含以下任何单词的行:linux windows solaris macos。在本练习中,您必须用双引号括起您的解决方案。"
我收到此错误消息:
"问题:^ linux $ || ^ windows $ || ^ solaris $ || ^ macos $接受: UNIX"
如何修复此代码?
答案 0 :(得分:2)
^(linux|windows|solaris|macos)$
管道|
提供交替,括号()
将交替限制为设定组。
答案 1 :(得分:0)
将它放在括号中并使用单个管道是使用正则表达式
的方法(Linux的|窗口| solaris的|的MacOS)
@bloodyknuckles回答只会找到以匹配的单词之一开头并以其结尾的字符串。删除胡萝卜和美元符号
这是一个测试http://regexpal.com/
的好工具答案 2 :(得分:0)
将\b
添加到单词边界构造的开头和结尾:
"\\\b(windows|linux|solaris|macos)\\\b"
答案 3 :(得分:0)
我写了这个并且通过了:
"(Linux的|窗口| solaris的|的MacOS)\\ B"
答案 4 :(得分:0)
太好了!
“((linux | windows | solaris | macos)\ b”