提问帖:为什么find的字符串中有“-”时会无法匹配?
# -*- coding: UTF-8 -*-
import os
def getFileNames(file_dir):
FileNames = []
fo = open("F:\srcnames.txt",'w')
for root,dirs,files in os.walk(file_dir):
for file in files:
if os.path.splitext(file)[1] == '.txt':
fo.write(file)
fo.write('\n')
return True
def compareNames():
file_dir = "F:\dst"
fo = open("F:\srcnames.txt",'r')
#file_dir = input()
for root,dirs,files in os.walk(file_dir):
for file in files:
print("=========")
for line in fo:
line = line.rstrip('\n')
#print(line)
if (line.find(file))>-1:#若不为-1
#temp = []
#temp = line.rstrip('-*')
print(line)
print("found!")
os.rename('F:\\dst\\'+file,'F:\\dst\\'+line)
break
else:
print("cannot find!")
fo.seek(0)
#print(file)
file_dir = "F:\src"
#file_dir = input()
getFileNames(file_dir)
compareNames()
#F是移动盘



运行结果↑
...全文
相关推荐
C++ string 字符串查找匹配实例代码
```cppstd::string str = "abcdefg";size_t pos = str.find_first_of("ce"); // pos = 2, 因为 'c' 是第一个匹配的字符`
Java正则多字符串匹配替换
展示了如何从XML标签中提取属性值,如`<meta-data android:name="appid" android:value="joy"></meta-data>`。
java 字符串匹配函数
"java 字符串匹配函数"Java 字符串匹配函数是指在 Java 编程语言中使用正则表达式来匹配和替换字符串中指定的模式的函数。
Java实现字符串匹配(基于正则)
**正则表达式语法**: - 在Java中,正则表达式遵循标准的Perl5正则表达式语法。例如,`"a|f"` 表示匹配字符 'a' 或 'f'。
深入C++ string.find()函数的用法总结
```cppposition = s.find_first_of(flag);cout << "s.find_first_of(flag) 是:" << position << endl;```2.


