首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在javascript中按单词拆分时忽略括号内的部分

在JavaScript中,按单词拆分时忽略括号内的部分可以通过正则表达式来实现。以下是一种可能的解决方案:

代码语言:txt
复制
function splitWordsIgnoringParentheses(str) {
  let result = [];
  let wordRegex = /\b\w+\b/g;
  let parenthesesRegex = /\([^)]+\)/g;
  let matches = str.match(wordRegex);

  if (matches) {
    matches.forEach(match => {
      let words = match.split(parenthesesRegex);
      result = result.concat(words);
    });
  }

  return result;
}

这个函数接受一个字符串作为参数,并返回一个按单词拆分后忽略括号内部分的数组。它使用了两个正则表达式,一个用于匹配单词,另一个用于匹配括号内的内容。首先,我们使用match方法找到所有的单词,并将它们存储在matches数组中。然后,我们遍历matches数组,对每个匹配项进行拆分。拆分时,我们使用括号内部分的正则表达式将括号内的内容去除,然后将拆分后的单词添加到结果数组中。最后,我们返回结果数组。

这种方法可以忽略括号内的内容,只将括号外的单词进行拆分。例如,对于输入字符串"hello (world) foo (bar)",函数将返回["hello", "foo"]

推荐的腾讯云相关产品:无

希望这个答案能够满足您的需求。如果您有任何其他问题,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

盘点一下 Python 和 JavaScript 主要区别(详细)

何在JavaScript命名变量 相反,我们应该在JavaScript中使用 lowerCamelCase 命名样式,名称以小写字母开头,然后每个新单词以大写字母开头。...让我们看看如何在Python和JavaScript中使用它们: 单行注释 在Python,我们使用井号(#)编写注释,该符号之后同一行上所有字符均被视为注释部分。...在JavaScript,如果条件之后(由括号包围),我们将编写关键字 else if 。条件完成后,我们编写花括号并在括号缩进代码。 ?...在JavaScript,我们必须明确指定几个值。我们以 for 关键字开头,后跟括号,在这些括号,我们定义循环变量及其初始值,必须为 False 条件以停止循环,以及如何在每次迭代更新该变量。...在花括号,我们编写方法主体。

6.4K30

Python和JavaScript在使用上有什么区别?

输入 在Python,我们使用该input()函数来请求用户输入。我们将消息写在括号。...在JavaScript,我们必须明确地指定几个值。我们用for关键字开始,后面是括号。在这些括号,我们定义了循环变量初始值,必须为False才能停止循环条件,以及如何在每次迭代时更新变量。...然后,我们写大括号来创建一个代码块,在大括号我们写出循环主体缩进。 ? 遍历可迭代对象 我们可以在Python和JavaScript中使用for循环来迭代可迭代元素。...Python和JavaScript方法 在Python,我们使用def关键字,其名称和括号参数列表定义方法。此参数列表以参数开头,self以引用正在调用该方法实例。...在此列表之后,我们编写一个冒号(:),并将该方法主体缩进。 在JavaScript,方法是通过编写其名称,后跟参数列表和花括号来定义。在花括号,我们编写方法主体。

4.9K20
  • LinuxGrep命令使用实例

    在本教程,您将学习如何在Linux中使用非常重要grep命令。我们将讨论为什么此命令至关重要,以及如何在命令行中将其用于日常任务。让我们深入了解一些解释和示例。 目录 为什么我们使用grep?...您可以使用它在文件搜索某个单词单词组合,也可以将其他Linux命令输出通过管道传输到grep,因此grep可以仅显示您需要查看输出。...您在上面的屏幕截图中所见,使用grep命令可以通过快速将搜索到单词与ls命令产生其余不必要输出隔离开来,从而节省了我们时间。...填充空间或制表符 正如我们在前面关于如何搜索字符串解释中提到那样,如果文本包含空格,则可以将文本包装在引号。选项卡也可以使用相同方法,但是稍后我们将说明如何在grep命令添加选项卡。...搜索时区分大小写 如果我们要搜索一个字符串,其中第一个可以是大写或小写,但字符串其余部分应该是小写怎么办?在这种情况下,无法使用-i switch 忽略大小写,所以一种简单方法是使用方括号

    62K55

    浅析JavaScript正则表达式

    括号任意字符 [^...] 不在方括号任意字符 ....只组合,把项组合到一个单元,但不记忆与改组相匹配字符 \n 和第n个分组第一次匹配字符相匹配,组是圆括号子表达式(也可能是嵌套),组索引是从左到右括号数,(?...注:如果左边选择项匹配就会忽略右边匹配项,即使它产生更好匹配 2.组合引用 正则表达式括号 () 有多作用: a.一个是把单独项组合成子表达式; b.一个是在完整模式定义子模式; c...-1 "javascript".search(/script/i); //4 注:search方法不支持全局检索,因为它会忽略正则表达式修饰符g 2.replace(reg,str) 用以执行检索与替换操作...9.RegExp对象 RegExp第一个参数包含正则表达式主体部分,也就是直接量两条斜线之间文本,不论是字符串直接量还是正则表达式都使用 \ 字符作为转义字符前缀, 因此当给RegExp()传入一个字符串表述正则表达式时

    1.6K30

    正则表达式

    ,不匹配imok ha 可以匹配ABCoka  和用法相反,不匹配 ^说明:^出现在开始是标准匹配开始;出现在[^...]^表示不匹配方括号字符起否定作用....在正则表达式,选择符是“|”,用于选择匹配2个选项之中任意一个,类似JavaScript“或”运算....注释在之前很熟悉了,正则注释也一样帮助我们更好去理解正则添加标注内容 (?#这里是注释部分) 说明:如果要在正则表达式包含注释,则最好打开“忽略模式里空白符”选项。...因此,此时可以在注释添加空格、换行符号、制表符号等。一旦启用了该选项,即符号#之后内容会全部被忽略掉。 正则表达式优先级 什么是优先级?         ...在之前学习php,JavaScript,c等语言运算符部分出现了运算符优先级定义了运算符运算顺序,这里正则也有专属 优先级. 运算符或表达式 说明 \ 转义字符 ()、(?:)、(?

    92920

    IC验证入门基础01-Vim配置

    这个配置,支持大部分语法高亮,但是,不包括systemVerilog。...set selection=exclusive set spell spelllang=en_us # 打开英语单词拼写检查 set visualbell # 出错时,发出视觉提示,通常是屏幕闪烁 set...set textwidth=80 # 设置行宽 set wrap # 自动行,关闭用set nowtap set smartcase # 搜索时忽略大小写 set hlsearch # 搜索时,高亮显示匹配结果...PS:gvim搜索,是在command命令模式下,输入斜杆(/),再输入你要搜索内容,查找到相应内容会高亮,回车之后,n,可以切换到下一个查找到内容,很方便。...、方括号和大括号 PS:在你coding过程当中,会有很多个括号,配置这个选项,有利于避免遗漏括号,便于找出对应另一个括号

    1.8K20

    正则表达式大全

    正则表达式特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不原来意义解释,/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词边界。 ...(alphanumeric,这是我意译,含数字),包括下划线,[\w]匹配"$5.98"5,等于[a-zA-Z0-9] \W 匹配一个不可以组成单词字符,[\W]匹配"$5.98"$,等于...当一个正则表达式成功地和目标字符串相匹配时,可以从目标串抽出和括号子模式相匹配 部分.例如,假定我们正在检索模式是一个或多个字母后面跟随一位或多位数字,那么我们可以使用模式 / [a-z]...能加上圆括号子串数量不受限制,但正则表达式对象只能保留最后9 条。如果你要访问所有的 圆括号匹配字串,你可以使用返回数组。...当正则表达式没有包含圆括号时候,该脚本解释成$n字面意 义。(这里n是一个正整数)。 例如: 下例脚本使用replace 方法来交换串单词位置。

    4.6K20

    正则表达式30分钟入门教程--deerchao

    通常,处理正则表达式工具会提供一个忽略大小写选项,如果选中了这个选项,它可以匹配hi,HI,Hi,hI这四种情况任意一种。...正则表达式引擎通常会提供一个“测试指定字符串是否匹配一个正则表达式”方法,JavaScriptRegExp.test()方法或.NET里Regex.IsMatch()方法。...=ing\b),匹配以ing结尾单词前面部分(除了ing以外部分),查找I'm singing while you're dancing.时,它会匹配sing和danc。 (?...:Regex regex = new Regex(@"\ba\w{6}\b", RegexOptions.IgnoreCase); 上面介绍了几个选项忽略大小写,处理多行等,这些选项能用来改变处理正则表达式方式...IgnorePatternWhitespace(忽略空白) 忽略表达式非转义空白并启用由#标记注释。 ExplicitCapture(显式捕获) 仅捕获已被显式命名组。

    1.9K40

    Google 出品 Java 编码规范,强烈推荐,权威又科学!

    例外:如果它是一个多块语句部分(if/else 或 try/catch/finally) ,即使大括号没内容,右大括号也要换行。...注意:这一点与Google其它语言编程风格不同(C++和JavaScript)。这条规则也适用于以下“类运算符”符号:点分隔符(.)... 8、数组初始化,大括号空格是可选,即 newint[]{5,6}和 newint[]{5,6}都是可以。...1, 2, 3} new int[] { 0, 1, 2, 3} new int[]{0, 1, 2, 3} 4.8.3.2 非C风格数组声明 括号是类型部分:String[]args...2、把这个结果切分成单词,在空格或其它标点符号(通常是连字符)处分割开。 推荐:如果某个单词已经有了常用驼峰表示形式,组成将它分割开(”AdWords”将分割成”ad words”)。

    2.7K40

    Google Java 编程风格指南

    例外:如果它是一个多块语句部分(if/else 或 try/catch/finally) ,即使大括号没内容,右大括号也要换行。...注意:这一点与Google其它语言编程风格不同(C++和JavaScript)。这条规则也适用于以下“类运算符”符号:点分隔符(.)...数组初始化,大括号空格是可选,即 newint[]{5,6}和 newint[]{5,6}都是可以。 Note:这个规则并不要求或禁止一行开关或结尾需要额外空格,只对内部空格做要求。...1, 2, 3} new int[] { 0, 1, 2, 3} new int[]{0, 1, 2, 3} 4.8.3.2 非C风格数组声明 括号是类型部分:String[]args...把这个结果切分成单词,在空格或其它标点符号(通常是连字符)处分割开。 - 推荐:如果某个单词已经有了常用驼峰表示形式,组成将它分割开(”AdWords”将分割成”ad words”)。

    1K11

    Java 编程风格军规,看这一篇就够了

    例外:如果它是一个多块语句部分(if/else 或 try/catch/finally) ,即使大括号没内容,右大括号也要换行。...注意:这一点与Google其它语言编程风格不同(C++和JavaScript)。这条规则也适用于以下“类运算符”符号:点分隔符(.)...数组初始化,大括号空格是可选,即 newint[]{5,6}和 newint[]{5,6}都是可以。 Note:这个规则并不要求或禁止一行开关或结尾需要额外空格,只对内部空格做要求。...1, 2, 3} new int[] { 0, 1, 2, 3} new int[]{0, 1, 2, 3} 4.8.3.2 非C风格数组声明 括号是类型部分:String[]args...把这个结果切分成单词,在空格或其它标点符号(通常是连字符)处分割开。 - 推荐:如果某个单词已经有了常用驼峰表示形式,组成将它分割开(”AdWords”将分割成”ad words”)。

    95540

    JavaScript 编程精解 中文第三版 九、正则表达式

    首先,由于斜杠会结束整个模式,因此模式包含斜杠时,需在斜杠前加上反斜杠。此外,如果反斜杠不是特殊字符代码(比如\n)部分,则会保留反斜杠,不像字符串中会将其忽略,也不会改变模式含义。...第一个元素是与整个模式匹配字符串,其后是与第一个分组匹配部分字符串(表达式第一次出现左圆括号部分),然后是第二个分组。...通过在希望捕获部分模式字符串两边加上圆括号,我们可以从字符串创建对应Date对象。...现在匹配器发现了所需x,接着报告从位置 0 到位置 4 匹配成功。 我们有可能编写需要大量回溯正则表达式。当模式能够以许多种不同方式匹配输入部分时,这种问题就会出现。...如果属性名称保持不变,\p{Name}那样,名称被假定为二元属性,Alphabetic,或者类别,Number。

    1.7K60

    JavaScript正则表达式

    https://blog.csdn.net/qq_32135281/article/details/78274563 Javascript正则表达式是前端中比较重要部分,正则表达式主要用于字符串处理...字母和数字 字母数字本身 \o 空字符 \t 制表符 \n 换行符 \v 垂直制表符 \f 换页符 \r 回车符 \cX 控制字符 字符类 字符类 将直接量字符放入方括号就组成了字符类 console.log...放括号任意字符 [^...] 不在方括号任意字符 ....()方法不支持全局检索,因为他会忽略正则表达式参数修饰符g replace(): 用于检索与替换操作,接收两个参数,第一个是正则表达式,第二个是要进行替换字符串,该方法可以全局匹配 console.log...构造函数接受两个参数,第一个是表达式主体部分,第二个是表达式修饰符 //在构造函数必须用 \ 字符作为前缀进行转义 var regExp = new RegExp('\\w*', 'g'); RegExp

    54520

    这可能是迄今为止最好一篇正则入门教程-下

    这个表达式首先是一个单词,也就是单词开始处和结束处之间多于一个字母或数字(\b(\w+)\b),这个单词会被捕获到编号为1分组,然后是1个或几个空白符(\s+),最后是分组1捕获内容(也就是前面匹配那个单词...=ing\b),匹配以ing结尾单词前面部分(除了ing以外部分),查找I'm singing while you're dancing.时,它会匹配sing和danc。 (?...重复n次以上,但尽可能少重复 处理选项 上面介绍了几个选项忽略大小写,处理多行等,这些选项能用来改变处理正则表达式方式。...事实上,为了避免混淆,在最新 JavaScript ,单行模式其实名叫 dotAll,意为点可以匹配所有字符,然而在指定该选项时,用还是 Singleline 首字母 s....现在我们问题变成了如何把xx aa> yy这样字符串里,最长配对括号内容捕获出来? 这里需要用到以下语法构造: * (?'

    70150

    送书 | Python编程:从入门到实践

    例如,看到单词print时,解释器就会将括号内容打印到屏幕,而不会管括号内容是什么。 编写程序时,编辑器会以各种方式突出程序不同部分。...每个方法后面都跟着一对括号,这是因为方法通常需要额外信息来完成其工作。这种信息是在括号提供。函数title()不需要额外信息,因此它后面的括号是空。...在Python 2,无需将要打印内容放在括号。从技术上说,Python 3print是一个函数,因此括号必不可少。...你还可以使用括号来修改运算次序,让Python你指定次序执行运算,如下所示: >>> 2 + 3*4 14 >>> (2 + 3) * 4 20 在这些示例,空格不影响Python计算表达式方式...就现在而言,暂时忽略多余小数位数即可;在第二部分项目中,你将学习在需要时处理多余小数位方式。 2.4.3 使用函数str()避免类型错误 你经常需要在消息中使用变量值。

    2.9K110

    Google Java编程风格规范(2020年4月原版翻译)

    例外:如果它是一个多块语句部分(if/else 或 try/catch/finally) ,即使大括号没内容,右大括号也要换行。...注意:这一点与Google其它语言编程风格不同(C++和JavaScript)。 这条规则也适用于以下“类运算符”符号:点分隔符(.)...类型和变量之间:List list 数组初始化,大括号空格是可选,即new int[] {5, 6}和new int[] { 5, 6 }都是可以。...括号是类型部分:String[] args, 而非String args[]。...把这个结果切分成单词,在空格或其它标点符号(通常是连字符)处分割开。 推荐:如果某个单词已经有了常用驼峰表示形式,组成将它分割开(”AdWords”将分割成”ad words”)。

    1.1K20

    浅谈Perl正则表达式

    12、Perl正则表达式模式部分重用 当Perl正则表达式模式匹配相同部分出现多次时,可用括号括起来,用\n来多次引用,以简化表达式: /\d{2}([\W])\d{2}\1\d{2}/匹配:...选项描述 g匹配所有可能Perl正则表达式模式 i忽略大小写 m将串视为多行 o只赋值一次 s将串视为单行 x忽略Perl正则表达式模式空白 1、匹配所有可能Perl正则表达式模式(g选项...d+)/[$1]/,但在替换部分不支持Perl正则表达式模式特殊字符,{},*,+等,s/abc/[def]/将把abc替换为[def]。...x忽略Perl正则表达式模式空白 注:e选项把替换部分字符串看作表达式,在替换之前先计算其值,: $string=”0abc1″; $string=~s/[a-zA-Z]+/$&x2/e;#...1、不存贮括号匹配内容 在PERLPerl正则表达式模式括号子Perl正则表达式模式将存贮在内存,此功能即取消存贮该括号匹配内容,/(?

    1K30

    JSON基础

    直观上看, JSON里数据是被保存在花括号({}),而如果从用途上进一步分析,最终得出结论:JSON 是一种数据交换格式。...": "cat" 这是因为,JSON 名称—值对是一种对许多系统都十分友好数据结构,而使用空格和特殊字符(即 a~z、0~9 除外其他字符)忽略了可移植性。...如果我有一个单词表,可以字母顺序给它们排序。但是数字5可没有字母顺序。...3.2 JSON数据类型 虽说对于复合数据类型,乃至于一小部分原始类型来说,它们编程语言存在许多差异,但我最开始提到原始类型,大多数语言中都是涵盖: 数字( 5 或 5.09):整型、浮点数...追根溯源,JSON 本身就是对象,也就是一个被花括号包裹名称—值对列表。如果你希望在作为对象JSON创建一个名称—值对,那就需要用到嵌套。

    80110
    领券