草庐IT

regex_extract

全部标签

regex - 从字符串中提取信息

当给出https://website-name.some-domain.some-sub-domain.com/resourceId(类型1)或https://形式的字符串时website-name.some-sub-domain.com/resourceId?randomContent(类型2),我只需要提取两个子字符串。我需要一个字符串中的website-name和另一个字符串中的resourceId。我使用以下代码提取了网站名称:s:="https://website-name.some-domain.some-sub-domain.com/resourceId?randomCo

regex - 在 Go 中返回定义的字符范围

假设我们有一个转换为字符串的float:"24.22334455667"我只想返回小数点右边的6位我可以通过这种方式获取小数点后的所有数字:re2:=regexp.MustCompile(`[!.]([\d]+)$`)但我只想要小数点后的前6位数字,但这什么都不返回:re2:=regexp.MustCompile(`[!.]([\d]{1,6})$`)我该怎么做?我找不到使用[\d]{1,6}的示例谢谢 最佳答案 或者……funcDecimalPlaces(decimalStrstring,placesint)string{loca

regex - 如何使用正则表达式提取此子字符串?

我想提取“cache”之后的数字(可以是任何非负整数),而不是“total_cache”之后的数字。我需要能够在单个正则表达式中执行此操作,而且我不能使用先行或后行。(我正在这样做,这似乎与此处的测试仪基本兼容:http://regexpal.com/)cache5764452352rss2929250304rss_huge0mapped_file283906048pgpgin19709097pgpgout17586611pgfault39612525pgmajfault3757inactive_anon160579584active_anon3931484160inactive_fi

regex - Go中的http Get请求(获取几行)

我只需要获取http.Get(的前几行)在golang中请求。有没有办法做到这一点。我不需要整个响应。我需要匹配一个只出现在前几行中的模式。获取整个响应并获取正则表达式使其变得非常非常慢,因为响应中的字符数非常大。这是最快的方法。目前我在做http.Get()//返回响应ioutil.readAll(responseoftheaboveurl)//返回一个字节数组MyFunction(searchforregexpinthebytearray)是否有任何方法可以获取几行或避免获取整个响应并匹配模式。 最佳答案 不要使用ReadAll

regex - 开始,尝试循环日期正则表达式结果

进行FindAllStringSubmatch正则表达式匹配,包括不同日期格式的命名组。我在循环结果时遇到问题。注释掉的条件使它工作,但不是很干净,并且当我添加额外的匹配项时它会中断。我觉得我正在接近它错误并且想要一些重定向。谢谢/packagemainimport("fmt""regexp""strings")funcmain(){text:="12/31/195631/11/1960"reg:=[]string{`(?P1[12])/(?P\d\d)/(?P19\d\d)`,`(?P\d\d)/(?P1[12])/(?P19\d\d)`}//Combinethem,caseigno

regex - 用 Go 解析维基百科信息框?

我正在尝试解析某些维基百科文章的信息框,但似乎无法弄清楚。我已经下载了阿尔伯特·爱因斯坦的文件,并尝试解析信息框lookslikethis:packagemainimport("log""regexp")funcmain(){st:=`{{redirect|Einstein|otheruses|AlbertEinstein(disambiguation)|and|Einstein(disambiguation)}}{{pp-semi-indef}}{{pp-move-indef}}{{Goodarticle}}{{Infoboxscientist|name=AlbertEinstein

regex - 我的正则表达式匹配太多。我如何让它停止?

这个问题在这里已经有了答案:Regularexpressiontostopatfirstmatch(9个回答)关闭2年前。我有这个巨大而丑陋的字符串:J0000000:TransactionA0001401startedon8/22/20089:49:29AMJ0000010:Projectname:E:\foo.pfJ0000011:Jobname:MBiekDirectMailTestJ0000020:Document1-Completedsuccessfully我正在尝试使用正则表达式从中提取片段。在这种情况下,我想获取ProjectName之后的所有内容,直到它显示J00000

regex - 如何用正则表达式和 Golang 替换可选组

我正在尝试翻译这个:{%img/images/testing%}进入这个:{{src="/images/testing">}}在Golang中使用正则表达式。中的部分在源字符串中是可选的。我有这段代码,当第一个捕获组存在时(“right”),它似乎在主测试用例中工作:regexp.MustCompile(`{%\s*img\s*(\p{L}*)\s+([/\S]+)\s+%}`).ReplaceAllString("{%imgright/images/testing%}","{{}}")但是,如果缺少可选组,我会得到:{{}}这不是我需要的-我想要整个class=""部分不见了,像这样

go - 在golang regex中取消整个字符串

我想写一个regex,在这里我想对整个字符串求反。我尝试-inventory/[^getData](假定它将检查getdatastringnotbepresentinexpression)我希望“inventory/getdata”在regex匹配上失败,而“inventory/get”通过regex匹配。基本上想否定字符串“getdata”我该怎么做? 最佳答案 如果整个字符串都是inventory/getData或inventory/get的,那么这将对inventory/get起到积极的匹配作用,但对inventory/get

regex - 有邪恶的球体吗?

我读过有关EvilRegExp的资料,并且在处理与RegExp相关的用户输入时通常会确保基本的安全级别到位。我不确定这个问题是否也存在于Glob中。我想这将归结为Glob'ing'的各个实现,在我的特定实例中,我正在使用https://github.com/gobwas/glob/对于如何测试此问题以及可能如何缓解此问题的任何建议,我将不胜感激。 最佳答案 我认为“邪恶的正则表达式”是指成为灾难性回溯受害者的正则表达式。根据您的描述,您似乎正在使用glob库来避免这些“邪恶的正则表达式”。Glob本质上是正则表达式的弱化版本。您在这