Preg_match_始终捕获多个PHP
我希望使用Preg_match_始终捕获多个PHP,php,regex,Php,Regex,我希望使用preg\u match\u all()捕获的格式: 12:00 10:00 上午10点 下午13点 晚上8点 上午7点 1830年 下午2时15分 上午9时45分 到目前为止,我拥有的正则表达式: /((\d{1,2}|\d{4})(.\d{1,2}))(am|pm)*/i 非常感谢您的帮助,我似乎无法用当前的正则表达式捕获5和6。如何: /^(\d{1,2})([.:]?\d{1,2})?(am|pm)?$/i 说明: / : regex
preg\u match\u all()
捕获的格式:
- 12:00
- 10:00
- 上午10点
- 下午13点
- 晚上8点
- 上午7点
- 1830年
- 下午2时15分
- 上午9时45分
/((\d{1,2}|\d{4})(.\d{1,2}))(am|pm)*/i
非常感谢您的帮助,我似乎无法用当前的正则表达式捕获5和6。如何:
/^(\d{1,2})([.:]?\d{1,2})?(am|pm)?$/i
说明:
/ : regex delimiter
^ : begining of string
( : capture group 1
\d{1,2} : one or two digit
) : end group 1
( : capture group 2
[.:]? : optional . or :
\d{1,2} : one or two digit
), : end group 2 otional
(am|pm)? : am or pm optional
$ : end of string
/i : regex delimiter with caseinsensitive flag
那么:
/^(\d{1,2})([.:]?\d{1,2})?(am|pm)?$/i
说明:
/ : regex delimiter
^ : begining of string
( : capture group 1
\d{1,2} : one or two digit
) : end group 1
( : capture group 2
[.:]? : optional . or :
\d{1,2} : one or two digit
), : end group 2 otional
(am|pm)? : am or pm optional
$ : end of string
/i : regex delimiter with caseinsensitive flag
那么:
/^(\d{1,2})([.:]?\d{1,2})?(am|pm)?$/i
说明:
/ : regex delimiter
^ : begining of string
( : capture group 1
\d{1,2} : one or two digit
) : end group 1
( : capture group 2
[.:]? : optional . or :
\d{1,2} : one or two digit
), : end group 2 otional
(am|pm)? : am or pm optional
$ : end of string
/i : regex delimiter with caseinsensitive flag
那么:
/^(\d{1,2})([.:]?\d{1,2})?(am|pm)?$/i
说明:
/ : regex delimiter
^ : begining of string
( : capture group 1
\d{1,2} : one or two digit
) : end group 1
( : capture group 2
[.:]? : optional . or :
\d{1,2} : one or two digit
), : end group 2 otional
(am|pm)? : am or pm optional
$ : end of string
/i : regex delimiter with caseinsensitive flag
您可以使用此正则表达式:
/\b(\d{1,2})([.:]?\d{1,2})?([ap]m)?\b/i
正则表达式的分解:
\b # word boundary
\d{1,2} # match 1 or 2 digits for hours
[.:]? # match *optional* dot or colon i.e. minute separator
\d{1,2} # match 1 or 2 digits for minutes
([ap]m)? # match *optional* am/pm
\b # word boundary
您可以使用此正则表达式:
/\b(\d{1,2})([.:]?\d{1,2})?([ap]m)?\b/i
正则表达式的分解:
\b # word boundary
\d{1,2} # match 1 or 2 digits for hours
[.:]? # match *optional* dot or colon i.e. minute separator
\d{1,2} # match 1 or 2 digits for minutes
([ap]m)? # match *optional* am/pm
\b # word boundary
您可以使用此正则表达式:
/\b(\d{1,2})([.:]?\d{1,2})?([ap]m)?\b/i
正则表达式的分解:
\b # word boundary
\d{1,2} # match 1 or 2 digits for hours
[.:]? # match *optional* dot or colon i.e. minute separator
\d{1,2} # match 1 or 2 digits for minutes
([ap]m)? # match *optional* am/pm
\b # word boundary
您可以使用此正则表达式:
/\b(\d{1,2})([.:]?\d{1,2})?([ap]m)?\b/i
正则表达式的分解:
\b # word boundary
\d{1,2} # match 1 or 2 digits for hours
[.:]? # match *optional* dot or colon i.e. minute separator
\d{1,2} # match 1 or 2 digits for minutes
([ap]m)? # match *optional* am/pm
\b # word boundary
当然,如果只有代码答案,没有解释,那么就有太多的正则表达式问题。因为他们从不理解它,只会复制粘贴它,所以对于每个正则表达式,他们必须问一个新问题。(但我不必告诉你,因为我已经做了很多次了!)@anubhava你能解释一下这个正则表达式吗?我在回答中添加了一些正则表达式的解释。是否总是需要两个人来要求你解释你的代码/你改变了什么?不,先生,没有这样的规则。我在工作中,也在工作和编码之间,我的注意力集中在这方面。此外,我总是有一个regex101演示链接在答案中,里面有详细的解释。如果只有代码答案,没有解释,那么核心问题就太多了。因为他们从不理解它,只会复制粘贴它,所以对于每个正则表达式,他们必须问一个新问题。(但我不必告诉你,因为我已经做了很多次了!)@anubhava你能解释一下这个正则表达式吗?我在回答中添加了一些正则表达式的解释。是否总是需要两个人来要求你解释你的代码/你改变了什么?不,先生,没有这样的规则。我在工作中,也在工作和编码之间,我的注意力集中在这方面。此外,我总是有一个regex101演示链接在答案中,里面有详细的解释。如果只有代码答案,没有解释,那么核心问题就太多了。因为他们从不理解它,只会复制粘贴它,所以对于每个正则表达式,他们必须问一个新问题。(但我不必告诉你,因为我已经做了很多次了!)@anubhava你能解释一下这个正则表达式吗?我在回答中添加了一些正则表达式的解释。是否总是需要两个人来要求你解释你的代码/你改变了什么?不,先生,没有这样的规则。我在工作中,也在工作和编码之间,我的注意力集中在这方面。此外,我总是有一个regex101演示链接在答案中,里面有详细的解释。如果只有代码答案,没有解释,那么核心问题就太多了。因为他们从不理解它,只会复制粘贴它,所以对于每个正则表达式,他们必须问一个新问题。(但我不必告诉你,因为我已经做了很多次了!)@anubhava你能解释一下这个正则表达式吗?我在回答中添加了一些正则表达式的解释。是否总是需要两个人来要求你解释你的代码/你改变了什么?不,先生,没有这样的规则。我在工作中,也在工作和编码之间,我的注意力集中在这方面。此外,我总是有regex101演示链接的答案,里面有详细的解释。一个好的解释怎么样?似乎你知道的足够多,可以给OP一个很好的解释,这样他就可以理解你的正则表达式,甚至可以自己编写下一个正则表达式!好好解释一下怎么样?似乎你知道的足够多,可以给OP一个很好的解释,这样他就可以理解你的正则表达式,甚至可以自己编写下一个正则表达式!好好解释一下怎么样?似乎你知道的足够多,可以给OP一个很好的解释,这样他就可以理解你的正则表达式,甚至可以自己编写下一个正则表达式!好好解释一下怎么样?似乎你知道的足够多,可以给OP一个很好的解释,这样他就可以理解你的正则表达式,甚至可以自己编写下一个正则表达式!这是真的吗?
1830
?preg\u match\u all用于一个freetext字段,最终用户在该字段中为多个内容写入许多时间变化。我使用正则表达式向日期字段填充新添加的时间值。”1830(英国时间)存在于多个实例中。这是真的吗?1830
?preg_match_all用于自由文本字段,最终用户在该字段中为多个内容写入许多时间变化。我使用正则表达式向日期字段填充新添加的时间值。”1830(英国时间)存在于多个实例中。这是真的吗?1830
?preg_match_all用于自由文本字段,最终用户在该字段中为多个内容写入许多时间变化。我使用正则表达式向日期字段填充新添加的时间值。”1830(英国时间)存在于多个实例中。这是真的吗?1830
?preg_match_all用于自由文本字段,最终用户在该字段中为多个内容写入许多时间变化。我使用正则表达式向日期字段填充新添加的时间值。”1830年(英国时间)“”出现在多个实例中。