Chinaunix
标题:
分隔中文和数字(英文)之间添加换行符
[打印本页]
作者:
hgx126
时间:
2023-09-19 15:15
标题:
分隔中文和数字(英文)之间添加换行符
有多个文本,内容如下,内容长度不固定,即“
B-其它”后面可能还有“C-
…”等等
--0-非**1-一代**2-二代**3-临时**A-军官证B-其它
复制代码
拟在中文和数字(英文)之间添加换行符,将"-"替换成空格。处理后文本内容为以下,内容长度不固定,即:
<div>0 非**</div><div>1 一代**</div><div>2 二代**</div><div>3 临时**</div><div>A 军官证</div><div>B 其它</div>
复制代码
求高手相助。
作者:
legs
时间:
2023-09-26 14:35
本帖最后由 legs 于 2023-09-26 14:41 编辑
perl -lpe's#(?:--)?([[:alnum:]]+)-([^[:alnum:]]+)#<div>\1 \2</div>#g' file
复制代码
作者:
wh7211
时间:
2023-09-26 16:14
本帖最后由 wh7211 于 2023-09-26 16:28 编辑
回复
1#
hgx126
cat 1
--0-非**1-一代**2-二代**3-临时**A-军官证B-其它
awk '{sub(/^--/,"");a=gensub(/([0-9a-zA-Z]+)-([^0-9a-zA-Z]+)/,"<div>\\1 \\2</div>","g");print a}' 1
<div>0 非**</div><div>1 一代**</div><div>2 二代**</div><div>3 临时**</div><div>A 军官证</div><div>B 其它</div>
复制代码
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2