Sous Windows, lorsque vous effectuez un double-clic dans un texte, le mot autour de votre curseur dans le texte sera sélectionné.
(Cette fonctionnalité a des propriétés plus compliquées, mais il ne sera pas nécessaire de les implémenter pour ce défi.)
Par exemple, laissez |
votre curseur entrer abc de|f ghi
.
Ensuite, lorsque vous double-cliquez, la sous-chaîne def
sera sélectionnée.
Entrée sortie
Vous recevrez deux entrées: une chaîne et un entier.
Votre tâche consiste à renvoyer la sous-chaîne de mots de la chaîne autour de l'index spécifié par l'entier.
Votre curseur peut être placé juste avant ou juste après le caractère de la chaîne à l'index spécifié.
Si vous utilisez juste avant , veuillez préciser dans votre réponse.
Spécifications (spécifications)
L'index est garanti à l'intérieur d'un mot, donc pas de cas de bord comme abc |def ghi
ou abc def| ghi
.
La chaîne ne contiendra que des caractères ASCII imprimables (de U + 0020 à U + 007E).
Le mot "mot" est défini par l'expression régulière (?<!\w)\w+(?!\w)
, où \w
est défini par [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_]
, ou "caractères alphanumériques en ASCII, y compris le soulignement".
L'index peut être indexé 1 ou indexé 0.
Si vous utilisez l'index 0, veuillez le spécifier dans votre réponse.
Cas de test
Les cas de test sont indexés 1 et le curseur se trouve juste après l'index spécifié.
La position du curseur est uniquement à des fins de démonstration, qui ne devra pas être sortie.
string index output cursor position
abc def 2 abc ab|c def
abc def 5 def abc d|ef
abc abc 2 abc ab|c abc
ab cd ef 4 cd ab c|d ef
ab cd 6 cd ab c|d
ab!cd 1 ab a|b!cd
we're
?
"ab...cd", 3
revenir?