我有一个以下格式的文件:
Data Data Data [Start] Data I want [End] Data
我想使用正则表达式Data I want从标签[Start]和[End]标签之间抓取.谁能告诉我这是怎么做到的?
请仔细阅读:这有点不寻常,你会想要说"那不是如何使用正则表达式"或"伙计,只需使用String.SubString(),"等...
我需要编写一个正则表达式(使用预先存在的方法),它将匹配文本BETWEEN花括号,但不是花括号本身.
例如: "{MatchThisText}" 和 "La la la {MatchThisText} la la la ..."
两者都应匹配: "MatchThisText"
一年前有人问过这个确切的问题,除了"MatchThisText"之外,他还得到了一堆正则表达式与大括号相匹配的解决方案,导致匹配"{MatchThisText}",这不是他(或我)需要.
如果有人可以编写一个实际上只匹配花括号之间的字符的正则表达式,我真的很感激.它应该允许任何ASCII值,并应在第一个结束括号停止匹配.
例如: "{retailCategoryUrl}/{filters}"
应匹配: retailCategoryUrl和过滤器
但不匹配: "retailCategoryUrl}/{filters"(除了外部大括号外)
嘿,这对我来说真的很棘手,所以请原谅这个问题,如果对你们这些人来说这是微不足道的.
谢谢!
我是正则表达式的新手.我试图解析字符串中大括号内的所有内容.我查阅了这篇文章作为参考,完全按照其中一个答案提出,但结果出乎意料.
这就是我做的
var abc = "test/abcd{string1}test{string2}test" //any string
var regex = /{(.+?)}/
regex.exec(abc) // i got ["{string1}", "string1"]
//where i am expecting ["string1", "string2"]
Run Code Online (Sandbox Code Playgroud)
我想我错过了什么,我做错了什么?
更新
我能够/g通过全球搜索得到它
var regex = /{(.*?)}/g
abc.match(regex) //gives ["{string1}", "{string2}"]
Run Code Online (Sandbox Code Playgroud)
我怎么能得到没有括号的字符串?
我的输入文件如下:
HEADER
{ABC|*|DEF {GHI 0 1 0} {{Points {}}}}
{ABC|*|DEF {GHI 0 2 0} {{Points {}}}}
{ABC|*|XYZ:abc:def {GHI 0 22 0} {{Points {{F1 1.1} {F2 1.2} {F3 1.3} {F4 1.4}}}}}
{ABC|*|XYZ:ghi:jkl {JKL 0 372 0} {{Points {}}}}
{ABC|*|XYZ:mno:pqr {GHI 0 34 0} {{Points {}}}}
{
ABC|*|XYZ:abc:pqr {GHI 0 68 0}
{{Points {{F1 11.11} {F2 12.10} {F3 14.11} {F4 16.23}}}}
}
TRAILER
Run Code Online (Sandbox Code Playgroud)
我想将文件解压缩到如下数组:
$array[0] = "{ABC|*|DEF {GHI 0 1 0} {{Points {}}}}"
$array[1] = "{ABC|*|DEF {GHI 0 2 0} {{Points {}}}}" …Run Code Online (Sandbox Code Playgroud) 我需要帮助来替换
字符串中的所有\n(新行)字符,而不是[code] [/ code]标记内的那些字符.我的大脑正在燃烧,我无法用自己解决这个问题:(
例:
test test test
test test test
test
test
[code]some
test
code
[/code]
more text
Run Code Online (Sandbox Code Playgroud)
应该:
test test test<br />
test test test<br />
test<br />
test<br />
<br />
[code]some
test
code
[/code]<br />
<br />
more text<br />
Run Code Online (Sandbox Code Playgroud)
谢谢你的时间.最好的祝福.
我试图用javascript获取花括号之间的内容,我找到了这个帖子:
正则表达式在花括号之间获取字符串"{我想在花括号之间有什么}}"
但我不知道如何应用像'/ {([^}] +)} /'这样的正则表达式
我试过string.replace('/ {([^}] +)} /','');
但这不起作用.
如果使用JavaScript在ap标签内括起来,我希望能够控制文本的字体权重.
例如:母牛跳过{moon}.{}内的font-weight会增加.
这样最终用户就可以将其输入到文本区域中,然后提交将打印到页面,以更改大括号或大括号内的字体粗细.
对此的任何帮助都会很棒.
鉴于用正常引号编写的文档,例如
Ben said "buttons, dear sir".
I replied "Did you say 'buttons'?" to him.
Run Code Online (Sandbox Code Playgroud)
有什么方法可以用适当的语义将这些东西变成LaTeX引号.即
Ben said ``buttons, dear sir''.
I replied ``Did you say `buttons'?'' to him.
Run Code Online (Sandbox Code Playgroud)
所以LaTeX产生:
Ben said “buttons, dear sir”.
I replied “Did you say ‘buttons’?”
Run Code Online (Sandbox Code Playgroud)
我的第一个想法是转向正则表达式.但是,我没有从谷歌或正则表达式库获得任何点击"LaTeX引用正则表达式",当然"TeX引用正则表达式"似乎返回太多.
谢谢.
在前一个问题的直接跟进中,如何使用PHP将文本(以及可能的括号)拉出来作为匹配?
具体来说,我正在编写一个Wordpress插件,我希望重新格式化两个花括号之间的所有文本(一个准wiki标记).
我已按照我之前提出的另一个问题中列出的步骤进行操作,并让匹配的部分正常工作 - 这是我需要帮助的匹配.
例:
This is some {{text}} and I want to reformat the items inside the curly braces
Run Code Online (Sandbox Code Playgroud)
期望的输出:
This is some *Text fancified* and I want to reformat the items inside the curly braces
Run Code Online (Sandbox Code Playgroud)
我有什么(即不工作):
$content = preg_replace('#\b\{\{`.+`\}\}\b#', "<strong>$0</strong>", $content);
Run Code Online (Sandbox Code Playgroud)
如果包括大括号的匹配太难,我可以使用大括号作为偏移进行匹配,然后使用更简单的文本匹配功能删除'违规'大括号.