У меня есть следующий код регулярного выражения, который я пытаюсь усовершенствовать для поиска Священных Писаний. ... остальные 66 книг Библии.
/(?=\S)\b(genesis|exodus|leviticus|...)(\.)?(\s)?((\d{1,3})([:,-;]?(?=\d))?((\d{1,3})?([:,-;]?(?=\d))?){0,50})/iu
Где я сталкиваюсь с проблемой, так это в том, что с несколькими ссылками на отрывки, такими как Бытие 3: 2 1 Паралипоменон 2: 2, если я использую регулярное выражение с пробелом в поиске, функция предполагает, что 1 в Паралипоменонах - это Бытие 1 и не распознает его и отправьте preg_replace_callback
. Какие-либо предложения?
Ввод представляет собой string
, который представляет собой целый абзац, например
Mat 3:12; Luke 3:17; Revelation 16:14 • gathered, 7 Mat 2:4; Mat 22:34; Mat 27:27; Mar 4:1; Mar 5:21; Joh 11:47; Act 4:26 • into, 1 Revelation 13:10 • resorted, 1 Joh 18:2 • themselves, 1 Act 11:26 • together, 24 Mat 13:2; Mat 22:41; Mat 26:3; Mat 27:17; Mat 27:62; Mar 2:2; Mar 6:30; Mar 7:1; Luke 22:66; Joh 11:52; Act 4:6; Act 4:27; Act 4:31; Act 13:44; Act 14:27; Act 15:6; Act 15:30; Act 20:7; Act 20:8; 1 Corinthians 5:4; Revelation 16:16; Revelation 19:17; Revelation 19:19; Revelation 20:8
то, что я пытаюсь сделать, это сделать так, чтобы оно соответствовало Священному Писанию и отрывку, а затем превратить его в ссылку href
, используя функцию pre_replace_callback
.