Эта регуляция соответствует "05c-8", но только там, где она только одна: < /p>
(?:^)((?:(05|5))?(C)(?:-)(\p{Digit}{1,5})(?:-|\p{Space})?(\p{Alpha}?(?:/\p{Alpha})*))(?:$)
< /code>
не найдет совпадение, если в строке (Ex. "String1 05c-8 String2"). < /p>
Я пробовал несколько других способы и могут найти его в строке, но тогда я теряю матч, если он один.
Подробнее здесь: https://stackoverflow.com/questions/794 ... -one-or-th