这是我的简单文本文件:
1. Text About Question 1
2. Text About Question 2
.
.
20. Text About Question 20
我有250个文本文件,所有文件只有20个问题,我想将这些文件转换为xml,在每个数字的开头添加“question”标签,所以它们看起来像:
<question>1. Text About Question 1
<question>2. Text About Question 2
.
.
<question>20. Text About Question 20<question>
我试过这个正则表达式:copy(\ d {1}。)替换\ 1只能在1到9之间生效.10之后它除了数字
1<question>0. Text About Question 10
作为第二种方式,这个正则表达式:(\ d {2}。)仅在10到20之间生效。所以它看起来像:
1. Text About Question 1
2. Text About Question 2
.
.
<question>20. Text About Question 20</question>
我无法继续(\ d {1}。)因为这个正则表达式将相同的标签添加到10到20之间的数字,看起来像:
<question>1. Text About Question 1 </question>
<question>2. Text About Question 2</question>
.
.
<question><question>20. Text About Question 20</question>
是否有正确的方法使用正则表达式将每个问题从1添加到20?
答案 0 :(得分:1)
您希望匹配1到20之间的所有数字。以下是
的正则表达式^[1-9]\.$|^1[0-9]\.$|^20\.$
击穿
^
- 行首
[1-9]
- 1到9之间的任何数字。不包括注释0
\.
- 在一段时间之前逃脱角色。否则它将匹配任何字符
$
- 正则表达式结束
|
- 或
^1[0-9]\.$
- 从1开始,介于10到19之间。
|^20\.$
- 或以20开头和结尾。