前言
在字符串形式的正则表达式中,需要对反斜杠进行转义!!!,最近用AI帮我转换代码,后端伙伴已经用C#的正则方法。结果被坑了一波。下面娓娓道来。
一、转换前
后端用C#写的判断方法,我就拿过来,想着最近用的AI大模型转换代码挺牛的。当然我用的是免费的国内的版本,而且测试了其他几个国内的免费版本,有些是能正确转译的。
C#代码:
public bool CheckXXXNum(xxType xxx, string xxxNum)
{
switch (xxx)
{
case xxx:
if (!Regex.IsMatch(xxxNum, @"^(\d{12}|\d{22})$"))
{
return false;
}
break;
default:
}
二、转换后
用AI帮我转换后第二个“//d” 一开始帮我转换成d. 导致匹配不到。没细看的结果报错了,还好测试发现了。所以这里查了相关知识记录下。