用于查找任何类型的 uuid 或随机生成的文本的正则表达式
Regex to finding any kind of uuid or random generated text
我想在 url 路径中找到任何类型的 uuid 或随机生成的文本,并将其替换为 <random>
。示例:
/test/ajs1d5haFkajs1dhasdd2as345sdAS3+Ddas9
= /test/<random>
/test/akKd9Ja3/ajs1d5haFkajs1ddasd623ha5sdAS3Ddas9=/30
= /test/<random>/<random>/30
/test/akKd9Ja3/Example-ASDAdddasd-108174.js
= /test/<random>/Example-108174.js
。
/test/akKd9Ja3-ASj83asj-dask92qwe_ke
= /test/<random>
我正在寻找一个匹配字符串的解决方案:
- 从
/
和 开始
- 以
/
或$
结尾
- 包含
[0-9]
和
- 包含
[a-z]
或 [A-Z]
- 可以包含
-
、=
、_
、+
、\s
(spa
- 不包含扩展名,即
.<something>
- 7 个字符及更长
{7,}
这是我目前使用的:
/[a-zA-Z0-9-=_+\s]{30,}
这适用于大多数情况,因为 uuid 通常超过 30 个字符。但我没有捕捉到 小的 即 /5c88148/
或 /6qdkKdk5/
。我也匹配 Example-ASDAddasd-108174.js
.
之类的东西
更新 - 如果你想要匹配必须包含至少一个 digit.You 可以使用这个。
(?<=\/)(?=[\w-+=\s]+[0-9])[\w-+=\s]{7,}(?![.])(?!\.)(?=\/|\n)
你可以试试这个。
(?<=\/)[\w-+=\s]{7,}(?!\.)(?=\/|\n)
Explanation
(?<=\/)
- 正面看后面。匹配“/”。
[\w-+=\s]{7,}
- 匹配任何单词字符,-
、+
、=
和 space 7 次或更多次。
(?!\.)
- 负面展望。不匹配 .
.
(?=\/|\n)
- 积极展望未来。匹配 '/' 或 '\n'(新行)。
我想在 url 路径中找到任何类型的 uuid 或随机生成的文本,并将其替换为 <random>
。示例:
/test/ajs1d5haFkajs1dhasdd2as345sdAS3+Ddas9
=/test/<random>
/test/akKd9Ja3/ajs1d5haFkajs1ddasd623ha5sdAS3Ddas9=/30
=/test/<random>/<random>/30
/test/akKd9Ja3/Example-ASDAdddasd-108174.js
=/test/<random>/Example-108174.js
。/test/akKd9Ja3-ASj83asj-dask92qwe_ke
=/test/<random>
我正在寻找一个匹配字符串的解决方案:
- 从
/
和 开始
- 以
/
或$
结尾
- 包含
[0-9]
和 - 包含
[a-z]
或[A-Z]
- 可以包含
-
、=
、_
、+
、\s
(spa - 不包含扩展名,即
.<something>
- 7 个字符及更长
{7,}
这是我目前使用的:
/[a-zA-Z0-9-=_+\s]{30,}
这适用于大多数情况,因为 uuid 通常超过 30 个字符。但我没有捕捉到 小的 即 /5c88148/
或 /6qdkKdk5/
。我也匹配 Example-ASDAddasd-108174.js
.
更新 - 如果你想要匹配必须包含至少一个 digit.You 可以使用这个。
(?<=\/)(?=[\w-+=\s]+[0-9])[\w-+=\s]{7,}(?![.])(?!\.)(?=\/|\n)
你可以试试这个。
(?<=\/)[\w-+=\s]{7,}(?!\.)(?=\/|\n)
Explanation
(?<=\/)
- 正面看后面。匹配“/”。[\w-+=\s]{7,}
- 匹配任何单词字符,-
、+
、=
和 space 7 次或更多次。(?!\.)
- 负面展望。不匹配.
.(?=\/|\n)
- 积极展望未来。匹配 '/' 或 '\n'(新行)。