php - 两个特殊字符之间的正则表达式

标签 php javascript jquery

有没有办法在 JQuery 或 Javascript 中复制这个 PHP 代码片段...

<?php 
  $A = preg_match_all('#{.*(.*)}#U', $value, $B); //matches all between {} put it into array "B"
  $C = $B[1]; // array[0] = "{content}" --- array[1] = "content"
?>

我花了大约 4 个小时左右的时间试图找到类似的东西,但没有成功。 目标基本上是找到 {} 之间的所有内容,然后提取有用的信息。

我不是 Javascript 专家,所以我希望得到任何帮助。预先感谢您。

最佳答案

您可以使用以下命令将 { 和 } 之间的所有文本 block 放入数组中:

function getBracedText(input) {
    var re = /\{(.*?)\}/g, matches, output = [];
    while (matches = re.exec(input)) {
        output.push(matches[1]);
    }
    return(output);
}

var str = "Some text {tag} and more {text}";
var results = getBracedText(str);
// results == ["tag", "text"];

工作演示:http://jsfiddle.net/jfriend00/DT4Km/

关于php - 两个特殊字符之间的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12398057/

相关文章:

php - HOw to SELECT * (all) 从上个月的最后一天到下个月的第一天

php - 正确检查 MySQLi OOP 错误

php - 我将如何解析这段 PHP 以允许通过 PHP 从 MySQL 接收/输出数据?

javascript - 尝试在 Jasmine 规范文件中导入类时获取 "SyntaxError: Cannot use import statement outside a module"

javascript - 如何在不触发 react 性的情况下计算 Vuex 状态差异

javascript - 如何使用 Sammy.Template 检测和处理 404 错误?

php - PDO MysQL "Update"语句未保存到数据库

javascript - 没有javascript的html重新加载

jquery - 使用带有 jQ​​uery 或正则表达式的 for 循环从多个 div 中的字符串中获取单词

jquery - 使用 jquery 聚焦 ajax 结果中的下一个链接