jjzjj

javascript - 使用 PEG 解析器进行 BBCode 解析 : pegjs or . .. 什么?

我有一个bbcode->html转换器,它响应文本区域中的更改事件。目前,这是使用一系列正则表达式来完成的,并且存在一些病态案例。我一直想在这个语法上削尖铅笔,但不想涉足剃牛毛。但是......最近我开始意识到pegjs,这似乎是PEG解析器生成的一个非常完整的实现。我已经指定了大部分语法,但现在我想知道这是否适合使用成熟的解析器。我的具体问题是:由于我的应用程序依赖于将我能翻译的内容翻译成HTML并将其余部分保留为原始文本,因此使用可能因语法错误而失败的解析器实现bbcode是否有意义?例如:[url=/foo/bar]clickme![/url]一旦输入结束标记上的结束括号,肯定会

javascript - 如何使用 jQuery 更改 CKEditor 文本?

我有一个带有CKEditor(bbCode插件)的文本区域。这是我的CKEditor实例:$(document).ready(function(){$('textarea#editor1').ckeditor();});我正在发出一个带值的JSON请求,我希望在这个textarea中修改这个值,我尝试使用jQuery但没有用!以下是我的尝试:video_id="lLi1Lx2xTKI";$.getJSON('http://gdata.youtube.com/feeds/api/videos/'+video_id+'?v=2&alt=jsonc',function(data,status

ruby - 如何在第一次出现时停止匹配?

我需要用Ruby正则表达式消化一些bbcode。我必须使用match命令分隔元素,并使用正则表达式/pattern/m去除换行符。比如我的一个字符串中的bbcode是:s="[b]Title[/b]\nArticletext\n[b]references[/b]"然后我使用match来分隔文本的部分,尤其是[b]和[/b之间的标题和引用部分]:t=s.match(/\[b\](.*)\[\/b\]/m)我使用(..)语法来捕获正则表达式中的字符串,我使用\来转义特殊的[和]个字符。/m是去除字符串中的换行符。然后t[1]包含:"Title[/b]\nArtucletext\n[b]re

javascript - 任何好的 JavaScript BBCode 解析器?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭3年前。Improvethisquestion目前我正在解析bbcode服务器端,但我想像这个网站一样显示预览。如果我使用ajax处理bbcode服务器端,它会有点滞后,所以我想在客户端处理,只显示预览。你们知道用javascript编写的bbcode解析器吗?

javascript - 有没有办法在 JavaScript 中对正则表达式使用非贪婪匹配?

我想知道是否有一种方法可以在JavaScript中使用非贪婪匹配?我尝试了U修饰符,但它似乎不起作用。我想用JavaScript编写一个小型BBCode解析器,但如果没有非贪婪匹配,就不可能(至少在我看来)做这样的事情:'[b]one[/b]two[b]three[/b]'.replace(/\[b\](.*)\[\/b\]/,'$1');但是这样的替换会很好,因为那时不需要检查HTML有效性。未闭合的标记将保持简单文本。 最佳答案 您可以在*或+之后使用?使其变得不贪婪,例如(.*?)

php - BBcode解析问题

我正在构建我自己的论坛,您可以在其中使用不同类型的BBcode,其中之一是[youtube][/youtube]来嵌入youtube视频,这个想法是让它变得简单,用户可以像这样输入完整的url或只是视频的代码[youtube]http://www.youtube.com/watch?v=AJ3_kndmeCg[/youtube][youtube]http://www.youtube.com/watch?v=AJ3_kndmeCg&feature=related[/youtube][youtube]AJ3_kndmeCg[/youtube]这是我的代码,它从一个完整的url中获取代码,结

php - 允许用户使用所见即所得发布 BBCode 或 HTML?

我一直在更新成员(member)页面系统,其中一项要求是允许在某些字段上使用粗体、下划线、斜体、字体颜色和链接,但不允许字体大小或样式-所有这些都与所见即所得的编辑器。这最初是通过文本区域和一些最小的HTML过滤完成的,即删除用preg_replace().我知道这很疯狂而且绝对不安全。我的第一个修改是使用TinyMCE并禁止在TinyMCE中使用某些标签,唯一的问题是显然我不能依赖TinyMCE作为任何类型的验证器,并且我发现保护HTML输入以防止XSS是一个绝对的雷区。我花了最后一个小时左右的时间阅读某些实践,似乎几乎不可能允许某些HTML标签/属性而不弄乱当前的配置文件,并进一步

php - Preg_replace BBCode 链接

我有这个bbcode:[url=http://www.youtube.com/watch?v=h1bIEK1h150]IfIofferyoumysoul[/url]例如。我怎样才能把它变成这样:IfIofferyoumysoul 最佳答案 你需要一个正则表达式。考虑到bbcode可以有文本URL或只有URL,您将需要两个语句:$message=preg_replace('@\[url=([^]]*)\]([^[]*)\[/url\]@','$2',$message);$message=preg_replace('@\[url\]([

php - 在 PHP 中解析 vBulletin BBCode

我想要一个将来自vBulletin的BB代码解析为标准HTML标记的函数。不使用PEAR库或PECL扩展,因为我不想对PEAR大惊小怪,或者不得不依赖能够在此应用程序的每个实例上安装PECL扩展。目标是零依赖。如果我能找到PEAR扩展的源代码并修改它就好了,但我似乎做不到。具体来说,我遇到的问题是匹配[quote=MyName]。名称“我的名字”不包含任何内容,可以包含空格。 最佳答案 嗯,除了PEARpackage和PECLextension您还有一个名为Zend_Markup的Zend框架包这非常易于使用(ZF是松散耦合的,因此

php - 在 PHP 中删除 BBCode 标签及其内容

这个问题在这里已经有了答案:10年前关闭。PossibleDuplicates:RecursiveBBCodeParsingStripBBCodeviaRegEx在PHP中删除字符串的所有BBCode标签及其内容的最佳方法是什么? 最佳答案 demo 关于php-在PHP中删除BBCode标签及其内容,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6777257/