Я новичок в regex, и мне нужна помощь. Итак, у меня есть строка ниже, и я хочу, чтобы мое регулярное выражение совпадало с первым символом аббревиатуры буквально + любой символ [az] неограниченное количество раз, но только для первого символа. Что касается остальных персонажей, я бы хотел сопоставить их такими, какие они есть. Буду очень признателен за любую помощь в том, что нужно изменить в моей строке регулярных выражений.
import re
s = 'nUSA stands for northern USA'
x = (f'({"nUSA"}).+?({" ".join( t[0] + "[a-z]" + t[1:] for t in "nUSA")})(?: )')
print(x)
out: (nUSA).+?(n[a-z]+ U[a-z]+ S[a-z]+ A[a-z]+)(?: )
То, чего я хочу достичь с помощью своей строки регулярных выражений, - это что-то вроде приведенного ниже шаблона, чтобы он мог соответствовать для север США.
(nUSA).+?(n[a-z]+ U + S + A)(?: )
вместо того, который я получаю
(nUSA).+?(n[a-z]+ U[a-z]+ S[a-z]+ A[a-z]+)(?: )
Я бы хотел, чтобы он работал для любого произвольного текста, а не только для указанного c. Я не уверен, правильно ли я выразил свою проблему.