2017-03-31 2 views
1

Ich bin es wieder.Position der Zeichenfolge von "rechts nach links"

Dieses Mal brauche ich Hilfe, um die Position eines Strings zu finden, aber von rechts nach links.

Ex:

  1. Das neue Auto ist:> SUV Ford (Benutzerdatei: 1191.jpg), OK;)
  2. Ausfall in Batterie war: >> Pickup Chevrolet (User-Datei: 23.jpg), BAD: '(
  3. Das neue Auto ist:> SUV Kia (Benutzerdatei: 8.jpg), OK;)
  4. Das neue Auto ist:> SUV Toyota (User-Datei : 27411058.jpg), OK;)
  5. Ausfall war in der Batterie: >>> SUV Dodge-(User-Datei: 9409.jpg), BAD, Priority

So, würde Ich mag die bekommen Position 'number.jpg', aber von rechts nach links:

  1. Index Nr: 8 -> rechts
  2. Index # nach links: 10 -> rechts
  3. Index # nach links : 8 -> rechts
  4. Index # nach links: 8 -> rechts
  5. Index # nach links: 16 -> rechts

nach links Wie kann ich es in Python 2.7?

@ dot.Py Wo bist du? Ich brauche deine Unterstützung.

+0

Pseudocode: Länge (FullString) - StartOfMatch_LeftToRight + Länge (MatchedString) – G5W

+1

Können Sie es übersetzen 2.7 in Python? –

Antwort

1

In der Zwischenzeit keine anderen "pythonic" Antworten bekommen haben, hier ist ein total "Hack":

import re 
print re.search("gpj", line[::-1]).start() # "gpj" as it reads in reverse 

oder die Pseudo-Code G5W kann so etwas wie dies erwähnt:

import re 
match = "jpg" 
pos = re.search(match, line).start() 
print len(line) - pos - len(match) 

oder so, sollte erhalten:

8 
10 
8 
8 
16 
+0

Cool! Jetzt werde ich anderes Thema veröffentlichen und ich hoffe, Sie können mir helfen. Dank bro. –

+0

Willkommen, wir helfen Ihnen jederzeit gerne weiter! – davedwards

+0

Danke! Ich bin sehr dankbar mit dir. –

0

Ergebnis ist in Capture-Gruppe 1.

Beginnt vom Ende (ganz rechts) und Backtracks, bis es gefunden wird.
Dies ist der schnellste Weg (Motoren optimieren dies für die Geschwindigkeit).

.*((?<!\d)\d+\.jpg)

Expanded
.* 
(       # (1 start) 
     (?<! \d) 
     \d+ 
     \. jpg 
)        # (1 end) 
+0

Interessant !!! –

+0

@frankam - Was ist interessant? – sln

Verwandte Themen