我想在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,}
这是我到目前为止使用的:
/[a-zA-Z0-9-=_+\s]{30,}
这适用于大多数情况,因为uuid通常长于30个字符。但是我没有发现小的,即/5c88148/
或/6qdkKdk5/
。我也匹配Example-ASDAddasd-108174.js
之类的东西。
答案 0 :(得分:1)
更新-如果您要匹配的字符必须至少包含一位数字。您可以使用它。
(?<=\/)(?=[\w-+=\s]+[0-9])[\w-+=\s]{7,}(?![.])(?!\.)(?=\/|\n)
您可以尝试一下。
(?<=\/)[\w-+=\s]{7,}(?!\.)(?=\/|\n)
说明
(?<=\/)
-积极回望。匹配“ /”。[\w-+=\s]{7,}
-匹配任何单词-
,+
,=
,并间隔7个或更多时间。(?!\.)
-负面展望。与.
不匹配。(?=\/|\n)
-积极向前看。匹配“ /”或“ \ n”(换行)。