有没有办法在不使用"字符串替换功能的情况下替换字符串中的单词,"例如,string.replace(字符串,单词,替换)。
<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Contact Page</title>
<script language="Javascript" type="text/javascript">
<!--- Hide Script from Old Browsers
adImages1 = new Array("http://www.rmar.in/images/service/web3.png", "http://www.triadsearchmarketing.com/wp-content/uploads/2015/06/web-design-banner.jpg", "http://www.rmar.in/images/service/web3.png")
adImages2 = new Array("http://www.triadsearchmarketing.com/wp-content/uploads/2015/06/web-design-banner.jpg", "http://www.rmar.in/images/service/web3.png")
thisAd1 = 0
thisAd2 = 0
imgCt1 = adImages1.length
imgCt2 = adImages2.length
function rotate() {
if (document.images) {
thisAd1++
if (thisAd1 == imgCt1) {
thisAd1 = 0
}
document.adBanner1.src = adImages1[thisAd1]
thisAd2++
if (thisAd2 == imgCt2) {
thisAd2 = 0
}
document.adBanner2.src = adImages2[thisAd2]
setTimeout("rotate()", 3 * 1000)
}
}
// End hiding script from old browsers -->
</script>
</head>
<body bgcolor="#FFFFFF" onload="rotate()">
<center>
<img src="http://www.triadsearchmarketing.com/wp-content/uploads/2015/06/web-design-banner.jpg" width="400" height="75" name="adBanner1" vspace="10" alt="Ad Banner 1" /> <br/>
<img src="http://www.rmar.in/images/service/web3.png" width="400" height="75" name="adBanner2" vspace="10" alt="Ad Banner 2" />
</center>
</body>
<html>
这里冷酷的词语被替换为真棒。
这是我在MATLAB中的作业,我试图在python中做。在MATLAB中执行此操作时,我们不允许使用strrep()。
在MATLAB中,我可以使用strfind来查找索引并从那里开始工作。但是,我注意到列表和字符串之间存在很大差异。字符串在python中是不可变的,并且可能必须导入一些模块才能将其更改为不同的数据类型,因此我可以像使用字符串替换函数一样使用它。
答案 0 :(得分:0)
只是为了好玩:)
st = 'This snowy weather is so cold .'.split()
given_word = 'awesome'
for i, word in enumerate(st):
if word == 'cold':
st.pop(i)
st[i - 1] = given_word
break # break if we found first word
print(' '.join(st))
答案 1 :(得分:0)
这是另一个可能更接近您使用MATLAB描述的解决方案的答案:
st = 'This snow weather is so cold.'
given_word = 'awesome'
word_to_replace = 'cold'
n = len(word_to_replace)
index_of_word_to_replace = st.find(word_to_replace)
print st[:index_of_word_to_replace]+given_word+st[index_of_word_to_replace+n:]
答案 2 :(得分:0)
您可以将字符串转换为列表对象,找到要替换的单词的索引,然后替换该单词。
s3:GetObject
答案 3 :(得分:0)
使用Regex和列表理解。
import re
def strReplace(sentence, toReplace, toReplaceWith):
return " ".join([re.sub(toReplace, toReplaceWith, i) if re.search(toReplace, i) else i for i in sentence.split()])
print(strReplace('This snowy weather is so cold.', 'cold', 'awesome'))
<强>输出:强>
This snowy weather is so awesome.