Ich benutze Ruby 2.1. Ich habe diese Logik, dieWie kann ich feststellen, ob drei oder mehr Zeichen zwischen Übereinstimmungen in einer Regex vorhanden sind?
results = line.scan(/\b((\S+?)\b.*?\b(\S+?))\b/)
Meine Frage für aufeinanderfolgende Paare von Zeichenketten in einem größeren String aussieht, ist, wie kann ich über die Liste der Ergebnisse iterieren und ausdrucken, ob es drei oder mehr Zeichen zwischen den beiden Strings? Zum Beispiel, wenn meine Zeichenfolge waren
"abc def"
Die oben
[["abc def", "abc", "def"]]
produzieren würde, und ich würde gerne wissen, ob es drei oder mehr Zeichen zwischen „abc“ und „def.“
Sie beziehen sich auf „drei oder mehr Zeichen zwischen den beiden Strings“ (die mit dem regulären Ausdruck konsistent ist), aber Ihr Beispiel enthält nur Leerzeichen (also ein bestimmtes Zeichen) zwischen den beiden Zeichenfolgen. Das ist verwirrend. –
Ich benutzte ein Beispiel, das meinem Ausdruck entsprach. Ich habe das Wort "Zeichen" anstelle von "Leerzeichen" in meiner Frage verwendet. B/c mein Regex könnte möglicherweise mehr als Leerzeichen entsprechen. Bitte lassen Sie mich wissen, was ich tun kann, um die Frage klarer zu machen. Danke Cary. – Dave
@Dave Was könnte es sonst noch als Leerzeichen geben? – wp78de