首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用正则表达式确定标题级别(Javascript)

如何使用正则表达式确定标题级别(Javascript)
EN

Stack Overflow用户
提问于 2018-06-29 03:46:27
回答 1查看 126关注 0票数 0

我正在使用Node.js读取我们从客户那里获得的工作场所订单的降价文件。我将文件分成行的数组,并对每一行执行检查以查看它是什么(h1、h3、task等),但在使我的RegExps正常工作时遇到了很多问题。以下是我到目前为止拥有的代码:

var filesystem = require('fs');
let content;
let missingItems = [];

filesystem.readFile('orders.md', 'utf8', (err, res) => {
    let content = res;
    let lines = content.split('\n');
    lines.forEach(line => {
        if(line.match(/#{1}/)){
            console.log('Store Name: ', line);
        };
    });
});

但是,此代码返回所有h1和h3行。我在网上看到使用RegExp 101时,问题是我的RegExp与h3线路匹配了3次,与h1线路匹配了一次。

如何编写对h1和h3行都不返回true的正则表达式?我不明白为什么当我显式地说匹配{1} (一次)时,这个匹配了三次

这是我一直在测试我的表达式的测试区域和一些我试图测试的示例文本:RegExp101

EN

回答 1

Stack Overflow用户

发布于 2018-06-29 03:51:08

您正在询问该行是否(至少)包含一个带有该regex的#,这两行都包含。你可以使用负向先行:

^#(?!#)

^的意思是“行的开始”,然后是文字井号,然后是以(?!pattern)形式出现的负数前视,所以我们向前看是为了看不到另一个井号。

更简单的方法是测试首字母#和后面的空格\s

^#\s

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51090295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档