问题标签 [bbcode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP如何从字符串中删除它?
我想从字符串中删除它:
谁能提供一个我可以使用的模式?
bbcode - 如何停止 BB 代码操纵?
嗨,我最近发现了一个问题,即使用 BB 代码输入链接的人能够操纵它们。
它们旨在输入以下内容:
但是,他们可以输入这样的内容来使链接颜色变为红色:
这是转换它的代码:
另外,我忘了,这是另一种类型:
php - 如何停止 BB 代码操作(第二部分)?
我最近发现了一个问题,即使用 BB 代码输入链接的人能够操纵它们。
它们旨在输入以下内容:
但是,他们可以输入这样的内容来使链接颜色变为红色:
这是转换它的代码:
其他人很友好地为一个非常相似的问题提供了解决方案,但他们希望我为此提出一个新问题。他们的解决方案只需要适应。我已经尝试过自己,但我真的无法让它发挥作用。 如何停止 BB 代码操纵?
regex - 除了 URL 正则表达式
叹息,正则表达式又麻烦了。
我有以下内容$text
:
我有正则表达式:
关键是仅在 url 前面没有[img]
or[url]
且后面没有[/img]
or的情况下才替换它[/url]
。在上一个示例的输出中,我得到:
URL 和lookbehind 和lookbehind 正则表达式都可以单独工作。
我想问题在于环视和 URL 正则表达式的组合。我的错在哪里?
我想要
将http://www.google.com替换为“有链接”,但保持原样“[url] http://www.google.com[/url] ”
我越来越
http://www.google.com替换为“有链接”,[url] http://www.google.com[/url]替换为“有链接”
这是要测试的 PHP 代码
php - 删除 PHP 中的嵌套 bbcode(引号)
我正在尝试从我的公告板中删除嵌套引用,但我遇到了一些问题。
示例输入:
[引用作者=personX 链接=topic=12.msg1910#msg1910 date=1282745641]
第二条消息引用了第一条消息
[/引用]
[引用作者=PersonZ 链接=主题=1.msg1#msg1 日期=1282533805]
随机的第三个报价
[/引用]
示例输出
[引用作者=personX 链接=topic=12.msg1910#msg1910 date=1282745641]
第二个报价中的消息
[/引用]
[引用作者=PersonZ 链接=主题=1.msg1#msg1 日期=1282533805]
随机的第三个报价
[/引用]
如您所见,嵌套的引号(原始消息)与引号标记一起被删除。
我似乎无法弄清楚。
当我尝试
它会删除除第一个之外的所有引用标签,
但是当我将代码扩展为:
它根本停止做任何事情。
对此有什么想法吗?
编辑:
谢谢你的帮助,哈吉。
不过,我总是遇到麻烦。
while 循环
导致页面无限循环,当被删除时(连同额外的 u 在 quoute 中),页面不做任何事情。
我已经确定原因是匹配
当更改为
代码确实开始工作,但是当更改为
它再次停止做任何事情。
此外,undo_replace 函数存在一个问题,因为它永远不会找到存储的哈希值,它只会给出有关未找到索引的警告。我猜与 sha1 匹配的正则表达式无法正常工作。
我现在拥有的完整代码:
再次感谢任何想法家伙:)
php - 由于 PCRE 限制,正则表达式使 Apache 崩溃
我目前正在创建 bbcode 解析引擎,但遇到了我自己无法解决的情况。
问题是,我遇到了一个与此完全相同的问题: Windows 上的 Apache / PHP crash with regular expression
这意味着,如果我做出类似下面示例的操作,Apache 会因为递归计数达到 690(PCRE 的内存限制为 1MB)而崩溃:
所以我需要以某种方式最小化*
我+
的正则表达式的需求,但这就是我没有想法的地方,所以我想也许你可以提出一些建议。
欢迎使用其他解析 bbcode 的方法(可以处理嵌套标签)。但是我不想使用已经构建的类或其他东西。我喜欢自己做事!
我还研究了 PECL 和 Pear HTML_BBCodeParser。但我不希望我的应用程序依赖于扩展。更有可能我可能会做一些脚本来检查该扩展,如果它不存在,请使用我在这里尝试做的 BBCode 解析器。
对不起,如果我的描述令人沮丧,我不是英语专业人士^^
编辑。所以正则表达式解释说:
这是我的开始标签。我使用了命名组。使用“标签”标识标签,使用“属性”标识标签属性。也可以将标签视为一个属性。那么这里发生了什么?我尝试匹配一个标签,当一个标签匹配时,我尝试匹配=
符号之后的任何内容或\s
(spacer) 之后的任何内容,直到它到达 tag closure ]
。
现在我在这里尝试匹配内容。这是棘手的部分。我正在寻找任何不是 [ 的字符,如果找到任何字符,则检查它是否不是我的结束标签或递归,并告诉正则表达式引擎这样做,直到...。
...找到结束标签。
php - 如何在php中删除这个标签?
我想从文本中删除所有内容(包括标签),例如:
但在一个条件下,[url]
标签内部会有[img]
标签。所以最后一句要删减:
谁能帮忙?我对正则表达式不好,还是有更简单的方法?
bbcode - 我无法让 MarkItUp 在预览中显示 bbcode
我想使用 markItUp 来允许用户使用 bbcode 格式化他们的文本,但是预览不起作用。
我已经从该站点下载了 markItUp 1.1.8 并在本地进行了测试。默认行为是使用 HTML 代码进行格式化,按下预览会将代码呈现为 html 并显示格式。
我已经从同一个 markItUp 网站下载了“基本 bbcode 集”,并按照说明将此文件夹放入“sets”文件夹中。我已按照指示将 js 文件的路径从 markitup/sets/default/set.js 更改为 markitup/sets/bbcode/set.js。与 css 文件相同。
如果我现在测试 markItUp 编辑器,它允许我将 bbcode 添加到我的文本中,但如果我按下预览,它不会将我的 bbcode 呈现为格式化文本。
我在 markItUp 网站上读到,我必须使用 bbcode 解析器才能进行预览,所以我从该网站下载了“markItUp!Php BBCode Parser”。我把它放在我的 markItUp 文件的根目录中,并且在 jquery.markitup.js 文件中,我按照说明编写了解析器的路径。我使用的路径是 ~/markitup.bbcode-parser.php
但这行不通。如果我在本地测试,预览只是显示废话,或者如果我在本地主机测试,则显示纯白框。
php - PHP 基础 BBcode
我已经成功地集成了 BBCode,但我想知道是否要动态列出所有允许/接受的 BBCode - 我怎么能做到这一点?(因为手动写出来可能很乏味......如果 BBCode 改变了,我必须更新写作)
我目前有一个 BBCode() 函数,它包含 2 个数组,一个包含正则表达式,另一个包含替换 (html),然后我返回正则表达式数组的 preg_replace() 和替换 (html) 数组.
干杯,期待您的投入!
ruby - 正则表达式将 BBCode 分成几块
我有这个:
我想得到这个: