根据标题,我尝试在字符串上使用 .match() 函数以仅匹配出现在该字符串开头或结尾的实例(但不匹配中间位置)。
例如,对于单词“test”:
x = "1 TEST 1"
x1 = "TEST 1"
x2 = "1 TEST"
x3 = "TEST"
只有 x1、x2 和 x3 应该匹配正则表达式。目前,我有:
.toUpperCase().match(/(TEST)/)
这将匹配“测试”的每个实例。我试过使用 ^ 和 $ 修饰符,但它们只会匹配 x3。然而,这个:`
.toUpperCase().match(/(TEST)$/)
将仅匹配 x2 和 x3,.toUpperCase().match(/^(TEST)/)
仅匹配 x1 和 x3。
最佳答案
只需使用 |
匹配一个或另一个。
.toUpperCase().match(/^TEST|TEST$/)
另请注意,您无需将 TEST
括起来。
关于javascript - 仅在字符串的开头/结尾匹配正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46677462/