Javascript 需要替换的正则表达式模式
我不太擅长正则表达式,所以需要社区的帮助。感谢您的帮助。 我有一个字符串如下Javascript 需要替换的正则表达式模式,javascript,regex,Javascript,Regex,我不太擅长正则表达式,所以需要社区的帮助。感谢您的帮助。 我有一个字符串如下 String str= "accountnumber,10000,accountname,Nachiket,balance,null,age,38" 我需要一个正则表达式模式来替换,10000,或,Nachiket,或,null, 字符串应该看起来类似 String str= "accountnumber,10000\naccountname,Nachiket\nbalance,null
String str= "accountnumber,10000,accountname,Nachiket,balance,null,age,38"
我需要一个正则表达式模式来替换,10000,或,Nachiket,或,null,
字符串应该看起来类似
String str= "accountnumber,10000\naccountname,Nachiket\nbalance,null\nage,38"
这是我的要求。我试过下面的模式
String str=str.replace(",/[^a-z0-9-]/,",',/[^a-z0-9-]//n')
谢谢,
Nachiket似乎您正在尝试对值进行分组,如
accountnumber、10000
和accountname、Nachiket
等。在这种情况下,您可以只搜索两个单词和两个逗号模式。大概是这样的:-
(.*),(.*),
Regex101样本-
下面是JavaScript实现
let str=“accountnumber,10000,accountname,Nachiket,balance,null,age,38”
设模式=/(.*),(.*),/g
让输出=str.replace(模式,(匹配)=>{
//匹配项将是=>accountnumber、10000、=>accountname、Nachiket等
//使用slice删除最后一个字符(逗号)
返回匹配。切片(0,-1)+“\n”
})
console.log(output)
不使用replace,您可以匹配除逗号以外的任何字符,然后是匹配逗号的可选部分,再匹配除逗号以外的任何字符
如果不想跨行,可以在求反字符类中使用\n
,或者如果不想匹配空格,可以使用[^,\s]+
[^,\n]+(?:,[^,\n]+)?
const regex=/[^,\n]+(?:,[^,\n]+)?/g;
[
“accountnumber,10000,accountname,Nachiket,balance,null,age,38”,
“测试1”,
“test2,test2”,
测试3,测试3,测试3
].forEach(s=>console.log(s.match(regex))代码>k。。我尝试了以下字符串str=str.replace(“,/[^a-z0-9-]/,”,“,”,/[^a-z0-9-]////n”)发布的答案对你有用吗?