正则表达式如何用新行和文本替换逗号和刻度

时间:2017-01-15 06:01:31

标签: regex

我有这样的文字:

'Airedale Terrier' , 'Akbash' , 'Akita' // and the list go on

我希望每个品种都替换它:

this.breed.push({label: 'Airedale Terrier', value: 'Airedale Terrier'});

我怎样才能使用正则表达式?

1 个答案:

答案 0 :(得分:1)

字符串:

'Airedale Terrier' , 'Akbash' , 'Akita'

查找(正则表达式):

('.*?')

替换(正则表达式):

this.breed.push({label: $1 , value: $1 });\n

如果\r\n在替换正则表达式中不起作用,请尝试\n

输出:

this.breed.push({label: 'Airedale Terrier' , value: 'Airedale Terrier' });
 , this.breed.push({label: 'Akbash' , value: 'Akbash' });
 , this.breed.push({label: 'Akita' , value: 'Akita' });

演示:https://regex101.com/r/pxVsZB/2

纠正输出(打开多行和全局标志):

查找:^\s*,\s*(.*)替换$1

演示https://regex101.com/r/by6DoE/2

最终输出:

this.breed.push({label: 'Airedale Terrier' , value: 'Airedale Terrier' });
this.breed.push({label: 'Akbash' , value: 'Akbash' });
this.breed.push({label: 'Akita' , value: 'Akita' });