javascript - 如何在 JavaScript 或 Java 中使用正则表达式从字符串中切片特定值

标签 javascript java

如何切片并仅获取不包括 {} 大括号内的字符的字符串值。

我可以获取大括号内的字符,但如何获取大括号外的内容?

我有一个像这样的字符串:

name is {response.vital.name} and disease is {response.vital.some} and drug is {response.vital.dis}

我想要这样的输出数组:

["the name is","and disease is","and drug is"]

最佳答案

您可以按括号之间的内容进行拆分,而不是匹配括号内的内容。

在 JavaScript 中,您可以使用 .split() 函数与此正则表达式 /{\[\w\.\]+}/i :

var str = 'name is {response.vital.name} and disease is {response.vital.some} and drug is {response.vital.dis}';
var arr = str.split(/{[\w\.]+}/).filter(s => s != "");

演示:

var str = 'name is {response.vital.name} and disease is {response.vital.some} and drug is {response.vital.dis}';
var arr = str.split(/{[\w\.]+}/).filter(s => s != "");
console.log(arr);

关于javascript - 如何在 JavaScript 或 Java 中使用正则表达式从字符串中切片特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47713276/

相关文章:

javascript - 如何检查某个类的特定值,然后通过跟踪代码管理器返回结果

php - JQuery 移动登录页面

java - Maven 编译 : Failure executing javac

java - 根据当前日期对日期数组进行排序

java - 无法使用 selenium webdriver 通过 LinkText 找到 webElement?

java - Android:SqliteOpenHelper中的SqliteCursorFactory有什么用

javascript - HTML5 Canvas 中的可拖动和可调整大小的元素

javascript - 没有 Vue 可以使用 Vuex 吗? (Vuex 服务器端?)

javascript - 我如何在 <php> 标签中调用它?

java - setOnTouchListener 问题