0
votes

Regex pour trouver des mots avec un caractère spécifique

Comment trouver tous les mots contenant une lettre spécifique dedans?

Par exemple, si ma chaîne est xxx

alors je veux extraire tous les mots avec le lettre 'a' en eux. Les correspondances seront xxx

jusqu'à présent, j'ai essayé xxx


3 commentaires

"Spécifique chiffre "? Voulez-vous dire "spécifique lettre "? chiffre signifie généralement un nombre de 0 à 9.


Oui je veux dire lettre. Corrigé mon libellé


Dupliqué possible de Comment trouver des mots contenant un certain Lettre avec des expressions régulières?


3 Réponses :


1
votes

Essayez avec une expression régulière inférieure xxx


2 commentaires

Soyez prudent, le match s'étendra aussi dans la ponctuation. Considérons \ w * a \ w * comme alternative qui correspond uniquement aux caractères de mots.


Vous avez raison @wyck. Il n'est pas clair de la question de savoir si cela devrait avoir la ponctuation dans les mots ou non, et ce qui devrait être attendu dans ce cas.



1
votes

solution sans regex à l'aide de Linq: xxx

string.split ('') : il renvoie une matrice de chaînes contenant les substrings de cette instance délimitée par '' / p>

Enumérable.Où (Predicate) : séquence de filtre basée sur le prédicat

énumérable.Contains () : détermine si une séquence contient un élément spécifié < / P>

POC: .NET FIDDLE


0 commentaires

1
votes

Selon la façon dont vous souhaitez gérer la ponctuation telle que l'hyphénation, envisagez d'utiliser simplement \ w * a \ w * .

FYI: \ w correspond à un mot word caractère.


0 commentaires