这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:regexptopartlyhideemail?我目前正在编写一个隐藏电子邮件地址的脚本(因此test@domain.com变成t~~~@~~~~~~.com)。同时按照有关此问题的说明-regexptopartlyhideemail?-我设法让它显示t~~~@domain.com,但在删除“域”时遇到问题。这是我目前所拥有的(假设$row->email是“test@domain.com”):-$string=preg_replace("(?email);$string=preg_replace("(?然而,
所以这是对RegEx的一种不寻常的使用;我想计算将与特定模式匹配的不同字符串的数量(如果合适,则表示无限)。例如,让我们考虑[a-zA-Z]会产生52,[a-zA-Z]{1,2}会产生2652(52+52×52−52×2;对于像aa,MM这样不明显的字符串或[a-zA-Z]减去52×2+这将是∞。当然,我希望这种机制能够处理比这更复杂的正则表达式。我对PHP和Ruby的解决方案特别感兴趣。这可能吗? 最佳答案 正则表达式用于通过将给定字符串与给定模式进行比较来匹配给定字符串。任何给定的正则表达式都可以匹配大量字符串,正则表达式越长,
我只是在路由配置中使用symfony正则表达式模式时遇到了一点麻烦。我想同时匹配/keyword和/keyword/URL。/字符是可选的。这是我的模式:pattern:/{keyword}/?/keyword/匹配模式,而/keyword不匹配。模式应该怎么写? 最佳答案 如果添加尾部斜杠,它是可选的——用户将从没有斜杠的路径重定向到有斜杠的路径。因此,/{keyword}/模式适用于/{keyword}和/{keyword}/。但是,如果您定义它时没有尾部斜线—/{keyword}—它仅适用于/{keyword}。
我需要一个正则表达式来匹配字符串中的前两个单词(它们可能包含字母、数字、逗号和其他标点符号,但不包含空格、制表符或换行符)。我的解决方案是([^\s]+\s+){2}但如果它匹配类似这样的内容:'123word'*in'123word,hello'*,它不适用于只有两个单词且后面没有空格的字符串。这个任务的正确正则表达式是什么? 最佳答案 你几乎是对的:([^\s]+\s+[^\s]+)假设您不需要对要使用的字符进行更强的控制。如果您需要同时匹配两个词或只匹配一个词,您可以使用其中之一:([^\s]+\s+[^\s]+|[^\s]+
preg_replace("/\[b\](.*)\[\/b\]/Usi","$1","Sometexthere...[b][b]Hello,[b]PHP![/b][/b][/b]...[b]andhere[/b]");返回Sometexthere...[b]Hello,[b]PHP![/b][/b]...andhere但我需要替换所有[b]...[/b]标签。为什么我的情况没有发生这种情况? 最佳答案 是的,如果元素是嵌套的,则需要多遍方法。这可以通过以下两种方式之一来完成;从内到外或从外到内匹配。这里有两个经过测试的脚本,带有完整
我正在使用xpdfpdf2text将PDF转换为文本,除了一件事,它工作得很好:它将段落符号(¶)转换为数字8。我需要找到一种方法来获取具有以下模式的所有内容:preg_match_all('/\b8\d{1,2}-/','text');但只替换该模式中的“8”。我已尝试将匹配项保存到一个数组中,但如何将它们重新插入到它们所属的文本中?理想情况下,段落标签会正确转换,但我尝试了几种不同的编码但都没有成功;我认为某些pdf文件中嵌入了字体。关于如何仅替换该模式中的“8”有什么想法吗?我不能只替换所有8,因为所引用文章的页面或章节可能是8;但是该段落不会有80多段的危险(这就是我检查8之后
我正在以编程方式清理评论和其他用户提交的内容中的一些基本语法。大写I、句子的第一个字母等。评论和内容与HTML混合在一起,因为用户可以选择格式化他们的文本。这实际上比预期的更具挑战性,尤其是对于PHP和正则表达式的新手。有没有像ucfirst这样的函数可以忽略html来帮助句子大写?此外,如果有任何有关在html中清理此类文本的链接或教程,我们将不胜感激。请在评论中留下您认为有帮助的任何内容。谢谢!编辑:示例文本:iwuzwalkinthruthePaRKandfoundurdog.ihoPetogetareward.plzcallortext7zero48two849sevensev
我正在尝试将用户定义的字符串添加到通过href传递给第三方的信息中。所以我有一些东西看起来像LinkTextUSERSTRING在页面加载时已知,因此它可以在页面加载时由php放入href,或者我可以使用javascript动态添加它。我不知道我需要做什么来转义任何特殊字符,以便链接有效并可以在另一端读取-USERSTRING可能真的很烦人,例如:[他说,“90%是不够好?”]数据仅用于自动生成的文件名,因此不需要100%保留,但我正在努力避免不必要的丑陋。 最佳答案 urlencode()函数提供了您正在寻找的内容,即:"targ
这个问题在这里已经有了答案:Regularexpressiontomatchalinethatdoesn'tcontainaword(33个答案)RegularExpressionblocknegation(1个回答)关闭9年前。要匹配除指定字符(在此示例中为“f”)之外的任何字符,我使用[^f]+。但是如何匹配指定单词以外的任意字符呢?像[^word]+这样的东西示例:haystack:"bla1bla2bla3bla4hellobla5bla6bla7"(haystack包含HTML和换行符)针:"bla1bla2bla3bla4"所以我想捕捉从开始到"hello"的所有内容
我有下面的代码,我试图理解这段代码到底做了什么,但是几次之后我没有弄明白......观察:这段代码是很久以前制作的,用于处理来自用户的一些输入,例如城市、州等。preg_replace('/\A[\w\.\-\+]+\z/','',$anyString)我已经知道的:\A=在输入的开头匹配\w=匹配任何单词\.,\-,\+=匹配字符。,和+\z=匹配字符串的结尾任何帮助将不胜感激,谢谢 最佳答案 \A-startatthebeginning[-matchanyofthefollowing:\w-awordcharacter(a-z,