Hướng dẫn python exact string match in list - khớp chuỗi chính xác của python trong danh sách

Rất mới đối với điều này vì vậy hãy với tôi với tôi ...

Tôi có một danh sách các từ được xác định trước

checklist = ['A','FOO']

và một danh sách từ từ

if checklist[0] in words:
3 trông giống như thế này

words = ['fAr', 'near', 'A']

Tôi cần kết hợp chính xác của

if checklist[0] in words:
4 trong
if checklist[0] in words:
5, vì vậy tôi chỉ tìm thấy 'A':

if checklist[0] in words:

Điều đó không hoạt động, vì vậy tôi đã thử một số gợi ý tôi tìm thấy ở đây:

if re.search[r'\b'checklist[0]'\b', line]: 

Không có kết quả, vì tôi dường như không thể tìm kiếm các đối tượng danh sách như vậy ... bất kỳ sự giúp đỡ nào về điều này?

Bài viết này mô tả so sánh chuỗi trong Python.

  • Kết hợp chính xác [so sánh bình đẳng]:
    if checklist[0] in words:
    
    6,
    if checklist[0] in words:
    
    7
  • Kết hợp một phần:
    if checklist[0] in words:
    
    8,
    if checklist[0] in words:
    
    9
  • Trận đấu về phía trước/lùi:
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    0,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    1
  • So sánh đơn hàng:
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    2,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    3,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    4,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    5
  • So sánh không nhạy cảm trường hợp:
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    6,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    7
  • Regex:
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    8,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    9

Kết hợp chính xác [so sánh bình đẳng]:
if checklist[0] in words:
6,
if checklist[0] in words:
7

Kết hợp một phần:

if checklist[0] in words:
8,
if checklist[0] in words:
9

print['abc' == 'abc']
# True

print['abc' == 'xyz']
# False

Trận đấu về phía trước/lùi:

if re.search[r'\b'checklist[0]'\b', line]: 
0,
if re.search[r'\b'checklist[0]'\b', line]: 
1

print['abc' == 'ABC']
# False

So sánh đơn hàng:

if re.search[r'\b'checklist[0]'\b', line]: 
2,
if re.search[r'\b'checklist[0]'\b', line]: 
3,
if re.search[r'\b'checklist[0]'\b', line]: 
4,
if re.search[r'\b'checklist[0]'\b', line]: 
5

print['abc' != 'xyz']
# True

print['abc' != 'abc']
# False

Kết hợp một phần:
if checklist[0] in words:
8,
if checklist[0] in words:
9

Trận đấu về phía trước/lùi:

if re.search[r'\b'checklist[0]'\b', line]: 
0,
if re.search[r'\b'checklist[0]'\b', line]: 
1

So sánh đơn hàng:

if re.search[r'\b'checklist[0]'\b', line]: 
2,
if re.search[r'\b'checklist[0]'\b', line]: 
3,
if re.search[r'\b'checklist[0]'\b', line]: 
4,
if re.search[r'\b'checklist[0]'\b', line]: 
5

print['bbb' in 'aaa-bbb-ccc']
# True

print['xxx' in 'aaa-bbb-ccc']
# False

print['abc' in 'aaa-bbb-ccc']
# False

So sánh không nhạy cảm trường hợp:

if re.search[r'\b'checklist[0]'\b', line]: 
6,
if re.search[r'\b'checklist[0]'\b', line]: 
7

print['xxx' not in 'aaa-bbb-ccc']
# True

print['bbb' not in 'aaa-bbb-ccc']
# False

Regex:

if re.search[r'\b'checklist[0]'\b', line]: 
8,
if re.search[r'\b'checklist[0]'\b', line]: 
9

  • Như với các số, toán tử
    if checklist[0] in words:
    
    6 xác định xem hai chuỗi có bằng nhau không. Nếu chúng bằng nhau,
    print['abc' == 'abc']
    # True
    
    print['abc' == 'xyz']
    # False
    
    3 sẽ được trả lại; Nếu họ không,
    print['abc' == 'abc']
    # True
    
    print['abc' == 'xyz']
    # False
    
    4 được trả lại.

Trận đấu về phía trước/lùi:
if re.search[r'\b'checklist[0]'\b', line]: 
0,
if re.search[r'\b'checklist[0]'\b', line]: 
1

So sánh đơn hàng:

if re.search[r'\b'checklist[0]'\b', line]: 
2,
if re.search[r'\b'checklist[0]'\b', line]: 
3,
if re.search[r'\b'checklist[0]'\b', line]: 
4,
if re.search[r'\b'checklist[0]'\b', line]: 
5

  • So sánh không nhạy cảm trường hợp:
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    6,
    if re.search[r'\b'checklist[0]'\b', line]: 
    
    7

s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False

Regex:

if re.search[r'\b'checklist[0]'\b', line]: 
8,
if re.search[r'\b'checklist[0]'\b', line]: 
9

Như với các số, toán tử

if checklist[0] in words:
6 xác định xem hai chuỗi có bằng nhau không. Nếu chúng bằng nhau,
print['abc' == 'abc']
# True

print['abc' == 'xyz']
# False
3 sẽ được trả lại; Nếu họ không,
print['abc' == 'abc']
# True

print['abc' == 'xyz']
# False
4 được trả lại.

words = ['fAr', 'near', 'A']
0

Nó nhạy cảm trường hợp, và tương tự áp dụng cho các so sánh của các toán tử và phương pháp khác. So sánh không nhạy cảm trường hợp được mô tả sau.

  • if checklist[0] in words:
    
    7 trả về
    print['abc' == 'abc']
    # True
    
    print['abc' == 'xyz']
    # False
    
    3 nếu chúng không bằng nhau và
    print['abc' == 'abc']
    # True
    
    print['abc' == 'xyz']
    # False
    
    4 nếu chúng bằng nhau.

words = ['fAr', 'near', 'A']
1

So sánh đơn hàng:
if re.search[r'\b'checklist[0]'\b', line]: 
2,
if re.search[r'\b'checklist[0]'\b', line]: 
3,
if re.search[r'\b'checklist[0]'\b', line]: 
4,
if re.search[r'\b'checklist[0]'\b', line]: 
5

So sánh không nhạy cảm trường hợp:

if re.search[r'\b'checklist[0]'\b', line]: 
6,
if re.search[r'\b'checklist[0]'\b', line]: 
7

words = ['fAr', 'near', 'A']
2

Regex:

if re.search[r'\b'checklist[0]'\b', line]: 
8,
if re.search[r'\b'checklist[0]'\b', line]: 
9

  • Như với các số, toán tử
    if checklist[0] in words:
    
    6 xác định xem hai chuỗi có bằng nhau không. Nếu chúng bằng nhau,
    print['abc' == 'abc']
    # True
    
    print['abc' == 'xyz']
    # False
    
    3 sẽ được trả lại; Nếu họ không,
    print['abc' == 'abc']
    # True
    
    print['abc' == 'xyz']
    # False
    
    4 được trả lại.

Nó nhạy cảm trường hợp, và tương tự áp dụng cho các so sánh của các toán tử và phương pháp khác. So sánh không nhạy cảm trường hợp được mô tả sau.

  • Chuyển đổi điểm và ký tự mã Unicode sang nhau [Chr, ord]

words = ['fAr', 'near', 'A']
3

Các chữ cái chữ hoa có các điểm mã nhỏ hơn chữ thường.

words = ['fAr', 'near', 'A']
4

Khi một danh sách các chuỗi được sắp xếp với phương thức danh sách

print['xxx' not in 'aaa-bbb-ccc']
# True

print['bbb' not in 'aaa-bbb-ccc']
# False
2 hoặc hàm tích hợp
print['xxx' not in 'aaa-bbb-ccc']
# True

print['bbb' not in 'aaa-bbb-ccc']
# False
3, thứ tự cũng được xác định dựa trên các điểm mã Unicode.

  • Sắp xếp một danh sách, chuỗi, tuple trong python [sắp xếp, sắp xếp]

words = ['fAr', 'near', 'A']
5

So sánh không nhạy cảm trường hợp:
if re.search[r'\b'checklist[0]'\b', line]: 
6,
if re.search[r'\b'checklist[0]'\b', line]: 
7

Tất cả các toán tử và phương pháp được mô tả cho đến nay là nhạy cảm trường hợp.

Nếu bạn cần so sánh không nhạy cảm trường hợp, bạn có thể sử dụng

if re.search[r'\b'checklist[0]'\b', line]: 
6 hoặc
if re.search[r'\b'checklist[0]'\b', line]: 
7 để chuyển đổi cả hai chuỗi thành chữ hoa hoặc chữ thường.

words = ['fAr', 'near', 'A']
6

Regex:
if re.search[r'\b'checklist[0]'\b', line]: 
8,
if re.search[r'\b'checklist[0]'\b', line]: 
9

Bạn có thể sử dụng các biểu thức thông thường để so sánh linh hoạt hơn.

  • Re - Hoạt động biểu thức thường xuyên - Tài liệu Python 3.9.7

if re.search[r'\b'checklist[0]'\b', line]: 
8

Sử dụng

if re.search[r'\b'checklist[0]'\b', line]: 
8 cho kết hợp một phần, chuyển tiếp và lùi. Lưu ý rằng
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
2 cũng có thể được sử dụng để kết hợp về phía trước, nhưng nó không được thảo luận ở đây.

Các metacharacters khác nhau [ký tự đặc biệt] có thể được sử dụng cho các mẫu biểu thức thông thường, nhưng cũng có thể chỉ định chỉ định một chuỗi như hiện tại. Một đối tượng khớp được trả về nếu chuỗi được bao gồm và

s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
3 nếu không. Các đối tượng khớp luôn được đánh giá là
print['abc' == 'abc']
# True

print['abc' == 'xyz']
# False
3.

words = ['fAr', 'near', 'A']
7

Metacharacter

s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
5 phù hợp với sự khởi đầu của chuỗi và
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
6 phù hợp với phần cuối của chuỗi.

words = ['fAr', 'near', 'A']
8

Ngoài ra, một loạt các metacharacters và trình tự đặc biệt khác có sẵn.

Ví dụ,

s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
7 đại diện cho bất kỳ một chữ cái nào trong bảng chữ cái chữ hoa và
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
8 có nghĩa là mẫu trước đó được lặp lại một hoặc nhiều lần. Do đó,
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
9 phù hợp với bất kỳ chất nền nào bao gồm một hoặc nhiều ký tự chữ cái viết hoa liên tiếp.

words = ['fAr', 'near', 'A']
9

Vui lòng xem bài viết sau đây cho các ví dụ cơ bản về các mẫu biểu thức thông thường, chẳng hạn như mẫu giống như ký tự đại diện.

  • Trích xuất một chuỗi con từ một chuỗi trong python [vị trí, regex]

if re.search[r'\b'checklist[0]'\b', line]: 
9

Sử dụng

if re.search[r'\b'checklist[0]'\b', line]: 
9 để kiểm tra xem toàn bộ chuỗi có phù hợp với mẫu biểu thức thông thường hay không. Ngay cả khi một số phần khớp,
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
3 được trả về nếu một số phần không khớp.

if checklist[0] in words:
0

words = ['fAr', 'near', 'A']
03 đại diện cho một số và
words = ['fAr', 'near', 'A']
04 đại diện cho
words = ['fAr', 'near', 'A']
05 lặp lại. Do Backslash
words = ['fAr', 'near', 'A']
06 được sử dụng trong các chuỗi đặc biệt của các biểu thức thông thường, chẳng hạn như
words = ['fAr', 'near', 'A']
03, rất hữu ích khi sử dụng các chuỗi thô [
words = ['fAr', 'near', 'A']
08 hoặc
words = ['fAr', 'near', 'A']
09] coi dấu gạch chéo ngược
words = ['fAr', 'near', 'A']
06 là ký tự nghĩa đen.

  • Dây thô trong Python

if re.search[r'\b'checklist[0]'\b', line]: 
9 đã được thêm vào trong Python 3,4. Trong các phiên bản trước, bạn có thể sử dụng
if re.search[r'\b'checklist[0]'\b', line]: 
8 với
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
5 và
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
6 để làm điều tương tự. Bạn cũng có thể sử dụng
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
2 và
s = 'aaa-bbb-ccc'

print[s.startswith['aaa']]
# True

print[s.startswith['bbb']]
# False
6, mặc dù nó không được hiển thị ở đây.

if checklist[0] in words:
1

words = ['fAr', 'near', 'A']
17

Bằng cách chỉ định

words = ['fAr', 'near', 'A']
17 là đối số
words = ['fAr', 'near', 'A']
19 của các hàm như
if re.search[r'\b'checklist[0]'\b', line]: 
8 và
if re.search[r'\b'checklist[0]'\b', line]: 
9, so sánh không nhạy cảm trường hợp là có thể.

if checklist[0] in words:
2

Làm thế nào để bạn tìm kiếm một chuỗi cụ thể trong danh sách Python?

Python Tìm chuỗi trong danh sách bằng cách sử dụng Count [], chúng ta cũng có thể sử dụng hàm Count [] để có được số lần xuất hiện của một chuỗi trong danh sách. Nếu đầu ra của nó là 0, thì điều đó có nghĩa là chuỗi không có trong danh sách. l1 = ['a', 'b', 'c', 'd', 'a', 'a', 'c'] s = 'a' Count = l1.count[] We can also use count[] function to get the number of occurrences of a string in the list. If its output is 0, then it means that string is not present in the list. l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C'] s = 'A' count = l1.

Làm thế nào để bạn phù hợp với một phần của chuỗi trong Python?

Các bước phù hợp với biểu thức chính quy..
Nhập mô -đun Regex với Nhập RE ..
Tạo một đối tượng Regex với Re.biên dịch [] hàm.....
Chuyển chuỗi bạn muốn tìm kiếm vào phương thức tìm kiếm [] của Regex đối tượng.....
Gọi phương thức nhóm của đối tượng [] để trả về một chuỗi của văn bản phù hợp thực tế ..

Làm cách nào để kiểm tra xem một chuỗi có khớp với Python không?

Chuỗi Python có thể được kiểm tra bằng cách sử dụng == Toán tử hoặc hàm __eq __ [].Các chuỗi Python rất nhạy cảm, vì vậy các phương pháp kiểm tra bình đẳng này cũng nhạy cảm trường hợp.using == operator or __eq__[] function. Python strings are case sensitive, so these equality check methods are also case sensitive.

Làm cách nào để tìm một từ trong danh sách Python?

Tìm chuỗi trong danh sách trong Python..
Sử dụng vòng lặp For để tìm các phần tử từ danh sách có chứa một chuỗi con cụ thể trong Python ..
Sử dụng hàm Filter [] để tìm các phần tử từ danh sách Python có chứa chuỗi con cụ thể ..
Sử dụng các biểu thức thông thường để tìm các phần tử từ danh sách Python có chứa một chuỗi con cụ thể ..

Bài Viết Liên Quan

Chủ Đề