`
sbiigu
  • 浏览: 162497 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用javascript匹配括号

阅读更多
<html>
	<head>匹配括号</head>
	<script type="text/javascript">
		function isBalanced(obj){//匹配括号
			var leftNormal = '(';
			var rightNormal = ')';
			var leftCurly = '{';
			var rightCurly = '}';
			var leftSquare = '[';
			var rightSquare = ']';
			var data = [];
			var flag = false;
			var text = obj.innerText || obj.innerHTML || obj.value;
			for(var i = 0 ; !flag && i < text.length ; i++){
				switch(text.charAt(i)){
					case leftNormal:
					case leftCurly:
					case leftSquare:
						data.push(text.charAt(i));
						break;
					case rightNormal:
						if(data.length == 0 || data.pop() != leftNormal)
							flag = true;
						break;
					case rightCurly:
						if(data.length == 0 || data.pop() != leftCurly)
							flag = true;
						break;
					case rightSquare:
						if(data.length == 0 || data.pop() != leftSquare)
							flag = true;
						break;
				}
			}
			//return data.length == 0 && !flag;
			alert(data.length == 0 && !flag);

		}
	</script>
	<body>
		<textarea id="text" cols="30" rows="6" onchange="isBalanced(this)" ></textarea>
	</body>
</html>
分享到:
评论

相关推荐

    计算器运算逻辑实现(带括号,求余,乘方,加减乘除),不使用eval函数-前端JavaScript 源码实现-括号匹配与初等运算

    为了实现括号匹配,我们可以使用栈数据结构。当遇到左括号时,将其压入栈中;遇到右括号时,检查栈顶是否为左括号,如果是则弹出栈顶元素。如果在遇到右括号时栈为空或者栈顶不是左括号,那么表示括号不匹配,这是一...

    括号匹配JavaScript和Python实现

    在JavaScript和Python这两种广泛使用的编程语言中,实现括号匹配的方法虽然有所不同,但基本原理是一致的:检查一个字符串中的开闭括号是否正确配对。 在JavaScript中,可以使用栈(Stack)数据结构来解决这个问题...

    vs2010 javascript 智能括号匹配和类似 region 等功能插件

    老外写的一个vs2010 js 括号匹配,缩进等功能的插件,苦恼于 json 开发时的括号匹配的同学们这回该笑了。

    IDEA花括号插件

    2. **高亮显示**:当光标移动到一个括号上时,其对应的匹配括号会以醒目的颜色高亮显示,形成鲜明对比。 3. **导航辅助**:点击或选择一个括号,插件能快速跳转到其匹配的括号,无需手动搜索。 4. **多语言支持**:...

    JavaScript正则表达式匹配 div style标签_.docx

    JavaScript 中的正则表达式使用特殊的语法来定义模式,然后使用相关的方法来对字符串进行匹配。 2. div style标签的解析 在HTML文档中,div元素的style属性用于指定元素的样式信息。例如,以下是一个简单的div元素...

    正则表达式匹配括号外的符号及数据

    正则表达式匹配括号外的符号及数据,指的是从文本字符串中提取出所有位于圆括号“()”之外的字符、符号以及数据信息。 在给定的文件中提到的正则表达式`[\\?!/\\.,\\s]+(?=[^\\)]*(\\(|$))`解释如下: - `[\\?!/\\...

    VS开发工具 脚本缩进括号自动匹配插件

    "VS开发工具 脚本缩进括号自动匹配插件"正是针对这一需求而设计的,它能显著提升JavaScript开发者的工作效率,确保代码的整洁和一致性。 这款插件名为JSEnhancements,它专为Visual Studio(VS)开发环境打造,旨在...

    Javascript经典正则表达式

    - 解析:使用非捕获组时,括号内的内容不会被捕获用于以后使用。 2. **前瞻 `X(?=Y)`** - 示例:`/user(?=name)/`,匹配字符串`The username is Mary`中的`user`。 - 解析:只有当`X`后面是`Y`时才匹配`X`。 3....

    02-括号匹配.md

    在实现上,栈可以用数组、链表等不同的物理结构来表达,JavaScript中一般使用数组来模拟栈的操作。 通过学习和掌握数据结构和算法的知识,不仅能够帮助前端开发者在面试中脱颖而出,更能在日常工作中提高代码效率和...

    javascript正则表达式迷你书 (1).pdf

    字符组是指使用方括号`[]`括起来的一组字符,可以匹配任何一个在方括号中的字符。例如,`[abc]`可以匹配任何一个`a`、`b`或`c`字符。字符组可以使用范围表示法,例如`[a-zA-Z]`可以匹配任何一个字母。 量词 量词是...

    JS使用正则表达式获取小括号、中括号及花括号内容的方法示例

    本示例探讨了如何使用正则表达式来提取字符串中小括号 `()`、中括号 `[]` 和花括号 `{}` 内的内容。这对于解析包含结构化数据的字符串特别有用,例如JSON格式或配置文件。 首先,我们来看如何创建正则表达式来匹配...

    brackets-doubleclick-match-brackets:括号扩展以通过双击括号来选择匹配括号内的块

    描述 "括号双击匹配括号,括号扩展以通过双击括号来选择匹配括号内的块" 强调了这个功能的实现方式和目的。它指出这是一个扩展功能,可能是在基础的代码编辑器上添加的插件或定制设置,目的是让用户能够通过双击一个...

    JavaScript完全自学宝典 源代码

    10.2.html 使用方括号符号实现匹配出租车牌号。 10.3.html 使用或符号匹配日期。 10.4.html 正则表达式中的量词。 10.5.html 正则表达式中的反义符号。 10.6.html 字符串中查找满足表达式的字符...

    javascript-leetcode面试题解动态规划问题之第22题括号生成-题解.zip

    有效的括号字符串应符合以下条件:每个左括号必须有相应的右括号匹配,且括号的嵌套必须正确。例如,"()"、"()"、"(()())"都是有效的括号字符串,而"("、")()"或"(()"则是无效的。 解决这个问题的关键在于理解如何...

    brackets-jump-to-matching:括号扩展将光标从一个大括号括号跳转到其匹配的对应项

    括号的“跳转到匹配括号”扩展 使用快速键盘快捷键将光标从一个大括号/方括号/括号跳转到其匹配的对应项: Ctrl-Shift-[ (包括 Mac - 不使用 ⌘)。 如果光标已经在大括号/括号/括号上,它将移动到相反的匹配对应...

    使用正则表达式的模式匹配

    字符类由方括号`[]`包围的一系列字符组成,用来匹配该集合中的任意一个字符。例如,`[abc]`匹配"a"、"b"或"c"。还可以定义范围,如`[a-z]`匹配小写字母中的任意一个。 #### 使用正则表达式的String与RegExp方法 ...

    js代码-js匹配括号准确性

    在JavaScript编程中,处理括号匹配的准确性是十分常见的任务,尤其在解析表达式、编译器或解释器的实现中。括号匹配涉及到的基本概念包括:圆括号(())、方括号([])、花括号({})以及它们之间的配对规则。下面将...

    IDEA彩虹括号插件.docx

    Rainbow Brackets能够按照颜色匹配括号,提高括号匹配速度。它通过为嵌套的括号分配不同的颜色,使得代码结构一目了然。 支持多种编程语言,包括Java、Python、JavaScript、C++等,满足不同开发者的需求。 自定义...

    javascript 正则表达式教程

    在正则表达式中,如果需要匹配特殊字符本身,需要使用反斜杠`\`进行转义,如`\*`匹配星号,`\(`匹配左括号。 三、分组与命名分组 1. 分组:使用圆括号`( )`对部分表达式进行分组,可以捕获这部分匹配的文本。 2. ...

Global site tag (gtag.js) - Google Analytics