草庐IT

REGEX_EXTRACT

全部标签

regex - 如何在 Ant 中使用正则表达式替换 xml 标签之间的值?

我正在尝试使用Ant替换xml中的值。我的xml文件:60我想将60替换为20并在ant任务replaceregexp中使用以下正则表达式:(?)[\S\s]*?(?=)[\S\s]*?(?=\但是在执行后从ant得到fatalerror:[FatalError]Thevalueofattribute"match"associatedwithanelementtype"replaceregexp"mustnotcontainthe'请告知,如何更改我的正则表达式,或者这个问题可能有另一种解决方案?谢谢。 最佳答案 和>必须使用<

C# Regex - 如何从字符串中删除多个成对的括号

我正在尝试弄清楚如何使用C#正则表达式从字符串中删除所有成对括号的实例。应删除括号和它们之间的所有文本。括号并不总是在同一行。此外,它们可能是嵌套的括号。字符串的一个例子是Thisisa(string).Iwouldlikeallofthe(parenthesestoberemoved).This(is)astring.Nested((parentheses)should)alsoberemoved.(Thanks)foryourhelp.所需的输出应如下所示:Thisisa.Iwouldlikeallofthe.Thisastring.Nestedalsoberemoved.fory

PHP 使用 extract() 将数组值作为变量传递并将其显示在页面上

我正在尝试在php中创建一个view($path,$data)函数,主要功能是包含目录中的特定文件并传入数据/变量到该页面,我设法创建了$path并且能够包含定义路径,现在我的下一步是将$data值传递到我包含的页面中,并希望将每个数组标签转换为变量。我的php类在classes.php下。define("SITE_NAME","process");classhelpers{publicfunctionview($path,$data){$dir=$_SERVER['DOCUMENT_ROOT'].SITE_NAME."/";include($dir.$path.".php");ret

c++ - C++ 中的 Regex 语句未按预期工作

这个问题在这里已经有了答案:Thisregexdoesn'tworkinc++(1个回答)关闭去年。下面的正则表达式语句在使用perl时匹配,但在使用c++时不匹配。阅读cplusplus.com上的“std::regex”类信息后,我可能不得不改用regex_search。除非,我使用regex_match中的标志。使用regex_search似乎使我想要执行的简单匹配过于复杂。我想在类似于perl的1行上进行匹配。在C++中是否有另一种1行方法来执行正则表达式匹配?C++std::stringline1="interfaceGigabitEthernet0/0/0/3.50l2tr

c++ - 带有 std::regex 的巨大程序大小 C++

我想用std::regex(标准正则表达式库)编译一个小的C++程序。编译器:Fedora21上的gcc/g++4.9.2。#include#include#includeusingnamespacestd;intmain(){cout在没有-std=c++11的情况下,使用std::regex编译程序是不可能的,所以在终端编译的合适指令是:g++-std=c++11code.cpp-oprog我的主要问题是:源代码很小,但为什么编译后的程序最终文件大小这么大:480KB?是不是因为-std=c++11的影响?发生了什么事,我怎样才能减少最终二进制程序的大小?UPD1.使用-Os标志实

c++ - 使用 boost::regex 获取子匹配结果

嘿,假设我有这个正则表达式:(test[0-9])+我将其与:test1test2test3test0constboolret=boost::regex_search(input,what,r);for(size_ti=0;i现在,what[1]将是test0(最后一次出现)。假设我还需要获取test1、2和3:我应该怎么做?注意:真正的正则表达式非常复杂并且必须保持一个整体匹配,因此将示例正则表达式更改为(test[0-9])将不起作用。 最佳答案 我认为DotNet有能力制作单个捕获组集合,以便(grp)+将在group1上创建

c++ - regex_match 有什么问题?很简单的表达

我正在使用VS2010并编写C++控制台应用程序并遇到问题#includeusingnamespacestd;//...if(!regex_match("abab",regex("(ab?)*"))){//theproblemis-whywearehere?whyitdoesn'tmatch?}在这里查看http://regexpal.com/-它匹配 最佳答案 非常简单:regex_match仅在整个序列匹配时才返回true。如果您想查看一个字符串是否包含您的正则表达式,您可能需要使用regex_search。“是吗?”匹配“ab

c++ - gcc std::regex 与 -fpack-struct 段错误

考虑以下简单的C++程序#include#includeintmain(intargc,char*argv[]){std::regexfoobar("[A]+");return0;}当使用-fpack-struct=1编译时出现段错误g++-5-std=gnu++14./fpack_regex.cpp-fpack-struct=1-oa.out&&a.outSegmentationfault(coredumped)同时g++-5-std=gnu++14./fpack_regex.cpp-oa.out&&a.out工作得很好。关于为什么pack-struct=1选项可能导致此失败的任何线

C++11 regex_token_iterator

嗯...我以为我理解正则表达式,我以为我理解迭代器,但C++11的正则表达式实现让我感到困惑...一个我不明白的地方:阅读regextokeniterators,我遇到了以下示例代码:#include#include#include#include#includeintmain(){std::stringtext="Quickbrownfox.";//tokenization(non-matchedfragments)//Notethatregexismatchedonlytwotimes:whenthethirdvalueisobtained//theiteratorisasuffi

c++ - 尝试包含 '#include <boost/regex.hpp>' 时,我得到 : 1>LINK : fatal error LNK1104: cannot open file 'libboost_regex-vc100-mt-gd-1_39.lib'

不知道为什么会这样,我从here下载了库虽然我有一个名为“libboost_regex-vc90-mt-gd-1_39.lib”的库,但我没有一个名为“libboost_regex-vc100-mt-gd-1_39.lib”的库,将vc90重命名为vc100就可以了但我不确定这是否是理想的解决方案?#include"stdafx.h"#include#include#include#defineBOOST_ALL_NO_LIBint_tmain(intargc,_TCHAR*argv[]){boost::arraya;boost::smatchs;getchar();return0;}