当前位置: 首页 > 知识库问答 >
问题:

Nodejs readFileSync两个字符串之间的正则表达式标签

万俟浩
2023-03-14

我尝试借助< code > nodejs < code > fs . read file sync()函数将文件内容提取到字符串中,如下所示:

let fileData = fs.readFileSync('./path, 'utf8');

在此之后,我想通过regex获取两个字符串之间的内容:

我有一个类似这样的字符串:

<route-meta>
    {
        "requiresAuth": true
    }
</route-meta>

<template>

</template>

<script>
    export default {
        name: "check"
    }
</script>

<style scoped>

</style>

我需要在之间查找文本/字符串

{
   "requiresAuth": true
}

我试着用fileData.match(/

我完成了这个例子:正则表达式匹配标记之间的文本

我还尝试检查fileData。replace('route-meta',''),但它仍然没有给我想要的结果。我的意思是,我无法使用fileData执行任何字符串操作。

在我犯错误的地方指引我。


共有1个答案

马胜泫
2023-03-14
匿名用户

请不要使用正则表达式进行 XML 解析

但是要回答您的问题,您可以尝试一下

let re = /<route-meta>[\s\S]*?<\/route-meta>/
let re1 = /<(\/*)route-meta>/gi
let newstr = fileData.match(re)[0].replace(re1,"")
console.log(newstr)

< code>re使用< code>match查找包含内容的完整集标记< br> re1使用< code>replace删除开始和结束标记

 类似资料:
  • 问题内容: 我发现了非常相似的帖子,但是我在这里不能完全得到正则表达式。 我正在尝试编写一个正则表达式,该表达式返回一个位于其他两个字符串之间的字符串。例如:我想获取字符串“ cow”和“ milk”之间的字符串。 我的牛总是喂牛奶 会回来 “总是给” 到目前为止,这是我拼凑的表达方式: 但是,这将返回字符串“牛总是给”。 问题答案: 前瞻(该部分)不消耗任何输入。这是一个 零宽度的断言 (边界检

  • 好的正则表达式问题,如何提取不在两个字符之间的字符,在本例中为括号。 我有一个字符串,例如:word1 |{word2 | word3}| word 4 我只想得到第一个和最后一个“管道”,而不是括号内的第二个。我尝试了无数次负克拉和负分组的尝试,但似乎无法让它发挥作用。 基本上,我在JavaScript拆分函数中使用这个正则表达式将其拆分为一个数组,其中包含:“word1”、“{word2|wo

  • 问题内容: 我有以下几种可能的形式的字符串: 我希望能够将它正则化为,基本上替换和之间的所有内容。我试过了: 但这是行不通的。任何帮助表示赞赏。 PS 表示有一个换行符用于此目的。实际上不在那里。 问题答案: 您可以使用 并替换为。请参阅在线Go regex演示。 在这里,匹配并捕获子字符串(它将从替换模式中引用此值),并将匹配并消耗除换行符以外的任何0+字符,直至行尾。 参见Go演示: 输出:

  • 我有一个包含数千行的文本文件。这里有一个例子 我试图提取'nt60'、'nt50'末尾的字符串。 问题是会包含行尾字符() 我想使用正则表达式搜索来匹配从 (') 开始的字符串,但我不知道我应该用什么来匹配 。 有人能帮忙吗?

  • 问题内容: 我将如何使用regx返回两个方括号之间的所有字符。这是一个例子: 我发现一个正则表达式可以在花括号之间进行操作,但是使它与方括号一起使用的所有尝试均失败了。这是正则表达式:这是我试图破解它 最终解决方案: 问题答案: 将匹配一条线并捕获组中您想要的内容。 你必须逃脱,并用 rubular.com证明链接上的文档将解释表达式的形成方式。