首页 > 解决方案 > 如何使用正则表达式使字符串行 url 无效

问题描述

我想在我的项目中使用正则表达式,我的问题如下。

我的正则表达式如下/([a-z_"\/\{\},\[\]]+)\b/g

如果每个字符串仅包含以下字符,则认为它是有效的:

我的弦

[
  "/persons/AA",
  "/personsTest/throw_web_Application",
  "/persons/{id}",
  "/personsSSS",
  "/persons/ping"
]

它返回给我

如您所见,它在“/”时停止

当它对我的正则表达式不利时,我想使我的整行无效。

谢谢 :)

标签: javascriptjsonregexstringurl

解决方案


如果它发现任何不在可接受的字符集中的字符,这将声明一个字符串无效:

[^a-z_\/{}[\],]

见正则表达式演示

let strings = [
  "/persons/AA",
  "/personsTest/throw_web_Application",
  "/persons/{id}",
  "/personsSSS",
  "/persons/ping"
];

for (let string of strings) {
    if (/[^a-z_\/{}[\],]/.test(string)) {
        console.log("Invalid string: ", string);
    }
    else {
        console.log("Valid string: ", string);
    }
}


推荐阅读