我需要把一个文本带到html标签中,像这样:
input: p1: Question 1
output: <h3>Question 1</h3>
字符串
或者也
input: question 1: ¿question 1?
output: <h3>¿question 1?</h3>
型
我不明白的细节,我有下面的正则表达式规则。
([a-zA-Z])([1-9])(:)+(.*)?
型
我的结果是
<h3> Question 1</h3>
question 1: ¿question 1?
型
- 在第一个示例中,我需要删除
<h3>
和Q
之间生成的空间 - 第二种方法对我完全不起作用
你能帮助我在regex规则中失败的地方吗?
3条答案
按热度按时间wvmv3b1j1#
您可以使用单个捕获组,并将可选的水平空白字符与
\h*
匹配在捕获组中,将至少一个非空白字符与
\S
匹配字符串
Regex demo
在替换中,使用组1的值:
型
u3r8eeie2#
regexp需要匹配问题号之前的可选空格(以修复第二个问题)和
:
之后的可选空格(以修复第一个问题)。字符串
DEMO
在
(.*)
之后不需要?
。由于.*
匹配一个零长度字符串,因此不需要将其标记为可选。我不太清楚为什么在
(:)
之后有+
--你真的想允许像Question 1:::::
这样的东西吗?6qfn3psc3#
答案是,感谢用户@User863
字符串