本帖最后由 小白龙 于 2022-9-2 08:52 编辑
回复 13# flashercs
原字符串:
┋国家, 中国, 美国, 日本
┋城市, 北京, 上海, 广州
┋大理, 三亚, 海南
我的名字是 ┃名字┃, 我的国家是 ┃国家┃, 我的年龄是┃年龄┃, 我家住在┃城市┃!
_________________________________________________________________
修改代码后处理结果:
┃Y_国家┃ 国家[]中国[]美国[]日本
┃Y_城市┃ 城市[]北京[]上海[]广州
┋大理, 三亚, 海南
我的名字是 ┃N_名字┃, 我的国家是 ┃Y_国家┃, 我的年龄是┃N_年龄┃, 我家住在┃Y_城市┃!
_________________________________________________________________
大佬, 请教两个小问题:
问题1.像上面的原字符串,标签前面带有空格符, 也能处理, PS代码我做了以下修改实现了:
行9
$reLabel = [regex]'┋([^,]*),(\s*)' #标签正则
改为
$reLabel = [regex]'\s*┋([^,]*),(\s*)' #标签正则
__________________
行60和90
$_.StartsWith("┋")
改为
$_.trim().StartsWith("┋")
___________________________________________________________
但是对应的C#代码, 我做了同样的修改, 会报错, 修改如下:
行21
Regex("┋([^,]*),(\\s*)"
改为了
Regex("\\s*┋([^,]*),(\\s*)"
__________________
行74和116
line.StartsWith("┋")
改为了
line.trim().StartsWith("┋")
问题2.处理后的标签┃后面必须要有一个空格, 但如果原字符串标签文本后的第一个逗号后面没有空格, 就不灵了, 例如下面:
┋国家,中国, 美国, 日本 |