正则表达式测试工具

前言

        正则表达式测试工具可供您输入正则表达式和测试文本,立即查看匹配结果.

        下面是离线的HTML文件,同样可以提供相同的服务.

目录

使用说明

HTML代码

正则表达式的编写经验和方法 

总结


使用说明

1.先将HTML代码存储成.html为后缀的文件;

2.然后用浏览器打开这个html文件;

3.按照页面显示,分别输入测试的字符串,正则表达式和特定选项;

4.特定选项:  全局搜索(返回多个匹配结果)  忽略大小写

5.点击<测试>按钮,将出现匹配结果.

HTML代码

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <style>
    body {
      font-family: Arial, sans-serif;
      background-color: #f4f4f4;
    }

    h2 {
      color: #333;
      margin-bottom: 20px;
    }

    label {
      display: block;
      margin-top: 10px;
      font-weight: bold;
    }

    input[type="text"],
    textarea {
      padding: 5px;
      border: 1px solid #ccc;
      border-radius: 5px;
      font-size: 14px;
    }

    input[type="checkbox"] {
      margin-top: 10px;
    }

    button {
      padding: 10px 20px;
      background-color: #4CAF50;
      color: white;
      border: none;
      border-radius: 5px;
      cursor: pointer;
      font-size: 16px;
    }

    button:hover {
      background-color: #45a049;
    }

    #regex {
      width: 1000px;
      height: 80px;
      border: 1px solid #ccc;
      border-radius: 5px;
      padding: 5px;
      font-size: 14px;
      resize: none;
    }

    #testString {
      width: 1000px;
      height: 180px;
      white-space: pre-wrap;
      border: 1px solid #ccc;
      border-radius: 5px;
      padding: 5px;
      font-size: 14px;
      resize: none;
    }

    #matchResult {
      width: 1000px;
      height: 180px;
      white-space: pre-wrap;
      border: 1px solid #ccc;
      border-radius: 5px;
      padding: 5px;
      font-size: 14px;
      resize: none;
    }

    </style>
</head>

<body>

<h2>正则表达式测试工具</h2>

<label for="testString">测试字符串:</label><br>
<textarea id="testString"></textarea><br>

<label for="regex">正则表达式:</label><br>
<input type="text" id="regex"><br>

<input type="checkbox" id="globalSearch"> 全局搜索
<input type="checkbox" id="ignoreCase"> 忽略大小写

<button onclick="testRegex()">测试</button>

<label for="matchResult">匹配结果:</label><br>
<textarea id="matchResult"></textarea>

<script>
    function testRegex() {
      var regex = document.getElementById("regex").value;
      var testString = document.getElementById("testString").value;
      var globalSearch = document.getElementById("globalSearch").checked;
      var ignoreCase = document.getElementById("ignoreCase").checked;

      try {
        var regexOptions = '';
        if (globalSearch) {
          regexOptions += 'g';
        }
        if (ignoreCase) {
          regexOptions += 'i';
        }
        var regexObj = new RegExp(regex, regexOptions);
        var matches = testString.match(regexObj);
        if (matches) {
          var result = "匹配成功:\n" + matches.length + "个匹配结果\n";
          for (var i = 0; i < matches.length; i++) {
            result += matches[i] + "\n";
          }
          document.getElementById("matchResult").value = result;
        } else {
          document.getElementById("matchResult").value = "匹配失败";
        }
      } catch (e) {
        document.getElementById("matchResult").value = "正则表达式错误: " + e.message;
      }
    }

</script>

</body>

</html>

正则表达式的编写经验和方法 

  1. 明确需求:在开始编写正则表达式之前,非常清楚地理解您想要匹配或提取的文本模式。
  2. 从简单开始:先构建一个简单的表达式来匹配基本的模式,然后逐步增加复杂性和条件。
  3. 测试样本数据:准备一些包含各种可能情况的测试文本,用它们来验证正则表达式的正确性。
  4. 利用工具:使用在线正则表达式测试工具或您所使用编程语言的调试工具来实时查看匹配结果。
  5. 学习基本语法:熟悉常见的元字符(如 .*+?\d\w 等)、字符类(如 [abc][0-9] 等)、分组(使用括号 () )和锚点(如 ^$ )的用法。
  6. 处理特殊字符:如果要匹配正则表达式中的特殊字符本身(如 $. 等),需要进行转义,例如 \.$ 匹配一个点字符。
  7. 考虑边界情况:思考可能的边界情况,如空字符串、最短匹配与最长匹配等。
  8. 参考示例和文档:查找相关的正则表达式示例和权威文档,借鉴他人的经验和最佳实践。
  9. 可读性和注释:对于复杂的正则表达式,添加注释来解释各个部分的作用,以提高可读性和可维护性。
  10. 调试和优化:如果匹配结果不符合预期,逐步分析和调整表达式,找出问题所在。

总结

        编写正则表达式,有常见的模式,可以直接参考我发的其它文章,介绍了几种经常用到的正则表达式.除此之外,借助这个测试工具,快速验证正则表达式的正确性.

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Regex Testor Version 1.02 Copyright (c) 2013 Fiery Red - flameleo 我们在使用正则表达式( regex: regular expression )的过程中,经常发现正则表达式的语法很令人头疼,即使对经常使用它的人来说也是如此。对于刚接触正则表达式的人来说多练习,多使用,才能熟练掌握正则表达式。 由于难于读写,容易出错,且需要反复练习。所以找一种工具对正则表达式对我们脑中构思的regex进行测试是很有必要的。 1.特点 a.适合初学者,在不断测试用学习如何使用正则表达式。 b.可以分组保存,测试中用到的正则表达式。 c.本工具使用最常见的regex。以下是简单示例: a|b Matches a or b gr(a|e)y Matches a or e . Matches any single character [abc] Matches a single character a, b or c [^abc] Matches any single character except a, b or c [a-z] Matches a single charactor in the range a to z [a-zA-Z] Matches a single charactor in the range a to z or A to Z ^ Matches the start of the filename $ Matches the end of the filename * Matches the preceding element zero or more times ? Matches the preceding element zero or one times + Matches the preceding element one or more times {x} Matches the preceding element x times {x,} Matches the preceding element x or more times {x,y} Matches the preceding element between x and y times 值得一提的是()代表子匹配,有些环境中gr(a|e)y Matches gray or grey 还支持许多常见的转义字符 \b,\B,\c,\d,\D,\f,\n,\r,\s,\S,\t,\v,\w,\W,\x,\u 具体详见附件 Regular Expression Syntax1.html 2.功能介绍 a.界面上显示提供regex输入框和原文本框,点击[模式匹配]按钮后,会在右侧输出结果,包括匹配字符串列表和文本。 b.对于测试中一些有用的regex,点击[insert]按钮添加到模式列表,以备日后使用。你可以位该regex添加描述分组,该信息会在程序结束后保存在CustomPatternInfo.ini文件中。 c.可以参考Readme_1.jpq和Readme_2.jpq图片介绍。 3.有待改进 a.界面布局和控件友好型和交互性。 b.界面功能提供regex语法支持。(暂时可以通过导入附件RegexSystax.ini到CustomPatternInfo.ini中) 4.意见反馈 a.请将您的宝贵意见反馈到 FieryRed_2012@163.com 附件: Readme.txt Readme_1.jpg Readme_2.jpg Regular Expression Syntax.html RegexSystax.ini
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Marst·Writer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值