其中之一可能会给您一些想法-
# --------------------
# To capture names, first/last name required
# \s*\p{Lu}+(?:\s+\p{Lu}+)*\s+\p{Lu}+\s*
# --------------------
\s* # some boundry (optional)
( \p{Lu}+ ) # (1), upper case first name (required)
( # (2), upper case middle names (optional)
(?: \s+ \p{Lu}+ )*
)
\s+ # some boundry (required)
( \p{Lu}+ ) # (3), upper case last name (required)
\s* # some boundry (optional)
# --------------------
# Or, if no boundry and only first name required
# \p{Lu}+(?:\s+\p{Lu}+)*
# --------------------
\p{Lu}+
(?: \s+ \p{Lu}+ )*
# --------------------
# Or, if no boundry and first/last name required
#\p{Lu}+(?:\s+\p{Lu}+)+
# --------------------
\p{Lu}+
(?: \s+ \p{Lu}+ )+