原始字符串

分类:N05_python

标签:

           

# 原始字符串
original_string = "    for ind, v in enumerate(li):"
print(original_string)
print(original_string.count('  '))
def find_nbsp(original_string):
    num = 0
    if original_string.startswith(' '):
        lines = original_string.split(' ')
        for line in lines:
            if line:
                break
            else:
                num += 1
        return num
# print(find_nbsp(original_string))
nbsp_count = find_nbsp(original_string)

datas = " "*nbsp_count
datas_1 = " "*(nbsp_count//2)
new_string = original_string.replace(datas, datas_1)
# 将数量减半

print(new_string)


def halve_nbsp(datas):
    lines = datas.split('\n')  # 将数据按行分割
    modified_lines = []
    
    for line in lines:
        # 检查行是否以' '开头
        if line.startswith(' '):
            # 去除行首的空格和换行符
            line = line.lstrip()
            # 计算' '的数量并减半
            nbsp_count = line.count(' ') // 2
            # 创建新的行,其中包含减半的' '
            modified_line = ' ' * nbsp_count
            modified_lines.append(modified_line)
        else:
            # 如果行不以' '开头,则不做修改
            modified_lines.append(line)
            
            # 将修改后的行重新组合成字符串
    modified_datas = '\n'.join(modified_lines)
    return modified_datas


# 原始数据
datas = """
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</p><pre class="brush:java;toolbar:false">def&nbsp;linear_search(li,&nbsp;val):
&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;ind,&nbsp;v&nbsp;in&nbsp;enumerate(li):
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;v==val:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;ind
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;None</pre><p><br/></p>
"""

# 处理数据
modified_datas = halve_nbsp(datas)

# 打印处理后的数据
print(modified_datas)


修改内容