查找一行中第一个和最后一个引号之间的文本
Finding the text between first and last quote of a line
我正在尝试构建一个简单的页面,该页面将删除文本区域内一行中第一个引号之前的文本和最后一个引号(包括最后一个报价)之后的文本。
这个问题非常有帮助,让我找到了以下代码:
$('#desqlize').on('click', function(){
var lines = $('textarea').val().split(''n');
var total = ""
$.each(lines, function(){
var enteredText = String(this);
var m = enteredText.match(/"(.*?)"/);
total = total + m[1] +''n'
})
$('textarea').val(total);
});
但是,如果文本区域中的文本在行中有引号,例如下面列出的文本,它也会删除这些引号中的文本。
cmd2.CommandText = cmd2.CommandText & "AND b.ColumnID IN ("&"'"&REPLACE(level2Array(1,0), ",", "','" )&"'"&") "
有人会像上面一样粘贴一块行,我基本上想从cmd2中删除所有内容,直到第一个引号,然后删除每一行的最后一个引号。这两个引号内的所有内容我都想保留。
提前感谢您的帮助。
这应该适用于输入中有引号的所有情况:
var parsed = $('textarea').val().replace(/^[^"]*"(.*)"[^"]*$/, '$1');
或者不带正则表达式:
var ta = $('textarea').val();
var parsed = ta.substring(ta.indexOf('"') + 1, ta.lastIndexOf('"'));
将此与上面的代码放在上下文中:
$('#desqlize').on('click', function(){
var lines = $('textarea').val().split(''n');
var total = ""
$.each(lines, function(){
var enteredText = String(this);
total = total + enteredText.replace(/^[^"]*"(.*)"[^"]*$/, '$1') + ''n';
// or, alternatively:
// total = total + enteredText.substring(enteredText.indexOf('"') + 1, enteredText.lastIndexOf('"'));
})
$('textarea').val(total);
});
相关文章:
- 表追加而不附加最后一个元素
- 无法在Ionic select中预先选择最后一个选项
- 为什么画布形状只在3个画布中的最后一个画布上渲染
- Jquery append oly获取循环Rails中的最后一个elemen
- 如何创建更好的方式来维护基于我的代码访问的最后一个页面
- 第一个元素和最后一个元素之间的连续循环
- 正则表达式获取 / 和 / 之间的 URL 中的最后一个单词
- 如何在 JavaScript 中替换字符串中最后一个出现的两个字符之间的字符
- 用于获取最后一个方括号 () 之间的文本的正则表达式
- Javascript 正则表达式切断斜杠之间的最后一个参数
- 如何在 {{#each}} 循环中的元素之间添加分隔符,最后一个元素之后除外
- 查找一行中第一个和最后一个引号之间的文本
- regex匹配第一个字符之前和最后一个字符之后的空格或符号之间的字符串
- 正则表达式将最后一个括号中的子字符串替换为Javascript中三角括号和第一个右右括号之间的字符串
- 获取最后一个破折号和最后一个点之间的字符串
- Javascript中的正则表达式;最后一个和最后一个之间的字符串"/"
- 如何在字符串对象的两个对象之间添加逗号,而不是最后一个对象
- 第一个和最后一个引号之间的匹配字符串
- Regex:获取逗号前最后一个字符之间的字符串
- 用Javascript正则表达式替换方括号之间的最后一个数字