我如何获得文本所属的跨度类ID?

2023-12-21

HTML(内容可编辑的div)

<div id="board">
   <div>int main<span class="openParen bm1">(</span><span class="closeParen bm1">)</span>{</div>
   <div>if<span class="openParen bm2">(</span> <span class="openParen bm3">(</span>x>1<span class="closeParen bm3">)</span> && <span class="openParen bm4">(</span>x<10<span class="closeParen bm4">)</span> <span class="closeParen bm2">)</span></div>
   <div>statement;</div>
   <div>}</div>
</div>

我对行使用 xloop,对每行内的字符使用 yloop。

1.) 我怎样才能得到span class第二个的((xloop:1 yloop:7) w/c 是bm2?

2.) 我怎样才能得到span之间bm2,我将循环它们中的每一个并将跨度的文本存储在数组中

JS

for( var x=0; x<$('#board > div ').size(); x++ ){
    var inlineDiv_num_text = $('#board > div ').eq(x).text();
    for( var y=0; y<$('#board > div ').eq(x).text().length; y++){

         kword_search = kword_search + inlineDiv_num_text.charAt(y);
         // i will detect the target paren here
          if(/(if|while|for)\s*\($/.test(kword_search)){
            //know w/c span the ( belongs to
            //get the bm span inside of it
         }
    }
}

目标:存储bm数组内的分组

 array[0] = ( (x>1) && (x<10) )
 array[1] = (x>1)
 array[2] = (x<10)

我相信这回答了您的第一个问题和第二个问题。

它为您提供“bm2”类的“openParen”和“closeParen”内的跨度,并将文本存储在数组中。 (这仅捕获括号,因为只有括号位于跨度内。)

var open = $('span[class="openParen bm2"]')
var spans = open.nextUntil('span[class="closeParen bm2"]')
var inside = []
$.each(spans, function(i, span){
    inside.push($(span).html())
})
alert(inside.join('-'))

这里的例子:jsFiddle http://jsfiddle.net/vKxhR/3/

EDIT

不确定你将如何“在跨度标签之间”执行操作,我首先获取父 div 元素的 html,并使用正则表达式传递跨度:

var allcontent = $('span[class="openParen bm2"]').parent().html()
var betweenSpan = allcontent.split(/<span class="openParen bm2">[^<]*<\/span>|<span class="closeParen bm2">[^<]*<\/span>/)[1]
var valuesArray = betweenSpan.split(/<[^>]*>/)

为您提供 js 数组:

[" ", "(", "x&gt;1", ")", " &amp;&amp; ", "(", "x&lt;10", ")", " "]

这里的例子:jsFiddle http://jsfiddle.net/vKxhR/4/

绝对不漂亮。

更好的解决方案是重新考虑 html 标签的结构(即将您想要捕获的值放入某些标签中!)

无论如何,够了,我就交给你了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我如何获得文本所属的跨度类ID? 的相关文章

随机推荐

  • 在Eclipse中,如何运行修改上下文路径的Tomcat Maven插件

    在安装了 m2 Maven 插件的 Eclipse 中 我可以使用 Run on Server 命令通过 Eclipse WTP 在 Tomcat 中运行我的 web 应用程序 现在我想通过 Maven 修改上下文路径 所以我使用以下插件
  • params=True 的 Altair 回归变换:当有多个组时如何访问 r² 和 coeffs

    我在用transform regression在图表中创建回归线和相应的方程文本 对于单个回归 这工作得很好 但是对于 setgroupby something 选项 文本将绘制在彼此之上 我尝试使用构建字符串lineBreak n 但这没
  • Tomcat 7.0.73 不适用于 java 9

    由于 catalina sh 中的默认 java endorsed dirs 选项 无法使用 java 9 启动基于 tomcat 的应用程序 Djava endorsed dirs usr local share tomcat endor
  • MVC4 - 如何从剃刀视图调用控制器方法

    我是 MVC 新手 有人可以帮助我并解释如何从视图调用控制器方法吗 我有 HomeController 里面有 ShowFileContent 方法 HttpPost public ActionResult ShowFileContent
  • python:打开并读取包含德语变音符号的文件作为unicode

    我已经编写了程序来从文本文件中读取单词并将它们输入到 sqlite 数据库中并将它们视为字符串 但我需要输入一些包含德语变音符号的单词 这是一段准备好的代码 我都用 尝试过 编码 iso 8859 15 和 编码 utf 8 没有不同 co
  • PayPal 重定向到相同的弹出窗口

    我在我的网页中集成了 PayPal 的 Identity API 像往常一样 当用户点击时login with paypal JavaScript 按钮 https developer paypal com webapps develope
  • 替换 ASP.NET Core 中的 @helper

    到目前为止 我不认为ViewComponent解决了也没有解决的问题TagHelper 有什么替代品吗 接受参数并返回一个的东西HtmlString 我没有看到任何有害的东西 helper foo string something div
  • 在discord.py 中将引号作为参数传递时出现错误

    目前 当有人在命令中使用引号时 我的 Discord 机器人出现错误 我收到以下错误 discord ext commands errors ExpectedClosingQuoteError Expected closing 这似乎是一个
  • oracle sqlplus 包装结果

    当我运行如下查询时 SELECT FROM CAR 结果出现 但每行换行为几行 如何停止这种换行以使每一行显示在一行上 换了之后还是有同样的问题set lines到一个大数字 select from dba directories OWNE
  • 许多WordPress主题中奇怪的虚假social.png的目的是什么

    我从网站下载了一些 WordPress 主题 我注意到一个奇怪的包含social png文件 查看这个文件 这不是一个真正的 png 文件 而是一个 php 脚本 其中包含难以理解的混淆代码 并且对于从其他站点分发的许多 WordPress
  • 用于将大小转换为人类可读字符串的 ObjC/Cocoa 类?

    有没有一种简单的方法可以做类似的事情 NSMagicDataConverter humanStringWithBytes 20000000 哪个会返回 19 1MB 从 OS X 10 8 和 iOS 6 开始 您可以使用NSByteCou
  • 如何将动态XHR内容动态导入到模板中?

    我使用以下代码获取仪表板 HTML 数据 该代码在单击按钮时执行 fetchDashboard const requestOptions Object headers new HttpHeaders append Authorization
  • 通过关键参数保持视图路由器处于活动状态

    如何分别使用不同的参数使 vue router 保持活动状态 TL DR 让我们考虑一个开发 Facebook 等网站的例子 每个用户都有一个个人资料页面 因为有很多用户 我们不想迭代所有用户并在加载时加载所有个人资料页面 如下所示
  • 动态无锁内存分配器

    编写满足无锁进度保证的算法或数据结构的困难之一是动态内存分配 调用类似malloc or new不保证以便携方式无锁 然而 许多无锁实现malloc or new存在 并且还有各种可用于实现无锁算法 数据结构的无锁内存分配器 但是 我仍然不
  • android-检测低电量通知的方法

    有没有办法在 android eclipse 中检测低电量通知 我有一个动作游戏 当它出现时需要暂停 官方开发者网站上有一个关于监控电池电量和充电状态的教程 我希望它对你有帮助 http developer android com trai
  • 为什么当视图聚焦时 RecyclerView 会滚动到视图顶部

    I have RecyclerView 某种聊天 物品有TextViews布局颠倒了 下面的输入字段RecyclerView 当我滚动到底部时RecyclerView然后单击底部项目 它会获得焦点 仅当它获得焦点时 而不是每次单击时 并且R
  • PowerShell 2.0如何处理异常?

    为什么我在运行这两个简单示例时在控制台上打印错误消息 我希望我在控制台上打印 错误测试 而不是 Get WmiObject RPC 服务器是 不可用 HRESULT 的异常 0x800706BA 在行 3 字符 15 Get WmiObje
  • python-画一张愤怒和惊讶的脸

    我使用这段代码并尝试更改代码以获得愤怒和惊讶的表情 但我做不到 谁能帮我 import turtle smiles turtle Turtle smiles penup smiles goto 75 150 smiles pendown s
  • 循环动态 JSON 以获取所有节点 C#

    我有多个 JSON 文件 需要循环并从中获取某些详细信息 但是 我希望有一个一刀切的循环 因为子节点在属性方面彼此匹配 谁能建议我如何循环我的 JSON 节点 Example name Example description Example
  • 我如何获得文本所属的跨度类ID?

    HTML 内容可编辑的div div div int main span class openParen bm1 span span class closeParen bm1 span div div if span class openP