You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为长度小于100字符的字符串首尾添加HTML标签?

为长度小于100字符的字符串首尾添加HTML标签的方法

核心思路是利用正则捕获+替换,把匹配到的目标字符串用指定标签包裹起来。以下是不同场景下的具体实现:

一、正则替换工具(Notepad++、VS Code等)

直接用编辑器的查找替换功能,步骤如下:

  • 打开「查找替换」面板,选择正则表达式模式
  • 查找内容输入:^.{0,99}$(匹配长度0-99的整行字符串,即长度小于100)
  • 替换内容输入:<h2>$0</h2>($0代表整个匹配到的字符串)
  • 点击「全部替换」即可完成批量处理

如果是处理多行文本,确保编辑器的「行首行尾匹配」功能开启(比如VS Code默认开启,Notepad++不要勾选「.匹配换行符」)。

二、Python代码实现

用re.sub函数完成替换,支持单字符串或多行文本处理:

import re

def wrap_with_tag(text, tag="h2"):
    # 匹配长度小于100的行,开启多行模式匹配每一行
    pattern = r"^.{0,99}$"
    return re.sub(pattern, f"<{tag}>\\g<0></{tag}>", text, flags=re.MULTILINE)

# 测试示例
original = "My name is John"
print(wrap_with_tag(original))  # 输出: <h2>My name is John</h2>

# 处理多行文本的示例
multi_line_text = """My name is John
This is a very long string that exceeds one hundred characters, so it should not be wrapped with tags
Hello World"""
print(wrap_with_tag(multi_line_text))

三、JavaScript代码实现

用字符串的replace方法,同样支持多行处理:

function wrapWithTag(str, tag = "h2") {
    // 开启多行模式,匹配每一行长度小于100的字符串
    const regex = /^.{0,99}$/gm;
    return str.replace(regex, `<${tag}>$&</${tag}>`);
}

// 测试
const originalStr = "My name is John";
console.log(wrapWithTag(originalStr)); // 输出: <h2>My name is John</h2>

补充说明

  • 如果需要调整匹配的长度阈值,只需要修改正则里的数字:比如要匹配小于150字符的字符串,就把{0,99}改成{0,149}
  • 若要更换HTML标签,直接修改tag参数即可(比如换成<p>标签,就传tag="p")

内容的提问来源于stack exchange,提问作者rhje

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 13:25:33