我正在查看一些正則運算式檔案,但被某些東西弄糊涂了。(R)背景關系中的條件(?(R)...|...)據說是:
perl有點神秘:
(右)
檢查運算式是否已在遞回內部求值。完整語法: (?(R)then|else)
PCRE用處不大:
(?(R) 整體遞回條件
和正則運算式.info對此無話可說。
這個條件是說子程式堆疊的深度超過 1 級還是其他意思?
uj5u.com熱心網友回復:
看到這個解釋:
如果沒有名為“R”的子模式,如果遞回呼叫整個模式或任何子模式,則條件為真
這意味著(?(R)條件檢查整個模式是否至少被遞回一次,并且檢查的結果是布林值,如果發生遞回,則為True,否則為False。
如果您需要檢查一些示例,請參閱https://github.com/PhilipHazel/pcre2/blob/587b94277b50ababde2380b5877c93e36ca65db8/src/pcre2_jit_test.c。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/371913.html
