gpt4 book ai didi

javascript - 如何查找字符串中无效的十六进制值?

转载 作者:行者123 更新时间:2023-11-28 07:58:15 24 4
gpt4 key购买 nike

如何查找变量中无效的十六进制代码?

有效:

 A
䄁

  -amp;#x41;
-amp;#x4101;

“x”后面必须有 2 或 4 个字符,然后是“;”

无效:

  &#x41
&#x4110
�

-amp;#x41
-amp;#x4110
-amp;#x410110;

像这样的字符串:

var  str = "Your done. -amp;#x2022No more late night... �no....";

我找到了这个正则表达式:

str.match(/(?:-amp;|&)#x\d{1,4}(?=[^;\n]*$)/ig);

但问题是它不匹配 x 值十六进制后超过 4 个字符:

-amp;#x410110;
�

谢谢。

(我想找到以 -amp;#x 或 &;#x 开头但没有“;”或 x 之后有超过 4 个或少于 2 个字符的字符)

最佳答案

无效的十六进制位于组 1

 # /(?:-amp;|&)\#x(?![a-f0-9]{2}(?:[a-f0-9]{2})?;)([a-f0-9]*;?)/

(?:
-amp;
| &
)
\#x
(?!
[a-f0-9]{2}
(?: [a-f0-9]{2} )?
;
)
( # (1 start)
[a-f0-9]*
;?
) # (1 end)

关于javascript - 如何查找字符串中无效的十六进制值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25796289/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com