折叠字符串中的空格

2023-11-26

我有一个看起来像这样的字符串:

"stuff   .  // : /// more-stuff .. .. ...$%$% stuff -> DD"

我想去掉所有标点符号,将所有内容设为大写并折叠所有空格,使其看起来像这样:

"STUFF MORE STUFF STUFF DD"

这可以通过一个正则表达式实现吗?还是我需要组合两个以上的正则表达式?这是我到目前为止所拥有的:

def normalize(string):
    import re

    string = string.upper()

    rex   = re.compile(r'\W')
    rex_s = re.compile(r'\s{2,}')

    result = rex.sub(' ', string) # this produces a string with tons of whitespace padding
    result = rex.sub('', result) # this reduces all those spaces

    return result

唯一不起作用的是空白崩溃。有任何想法吗?


这是一个单步方法(但大写实际上使用字符串方法 -​​ 简单得多!):

rex = re.compile(r'\W+')
result = rex.sub(' ', strarg).upper()

where strarg是字符串参数 (don't使用隐藏内置函数或标准库模块的名称,please).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

折叠字符串中的空格 的相关文章

随机推荐

  • 如果默认参数值是在调用站点不可见的代码中定义的,该怎么办?

    我发现了一些奇怪的代码 in file ClassA h class ClassA public void Enable bool enable in file ClassA cpp include
  • Unity 私有唤醒更新和启动方法如何工作? [复制]

    这个问题在这里已经有答案了 Unity如何在后台调用Awake Update和Start方法 对我来说 它们没有访问修饰符表明它们是私有方法 并且它们不使用 new 或 override 之类的东西 那么 Unity 框架如何找到调用它们的
  • 如何从使用“Project Centennial 转换器”转换为 UWP 的 Win32 应用访问 Windows.Services.Store 命名空间以启用应用内购买?

    我有一个在 VS 2008 中开发的本机 C MFC 应用程序 没有 NET 内容 我使用百年计划转换器 现在我有一个 appx 包作为 UWP 应用程序在 Windows 10 v 1607 中运行 我的下一个目标是在提交到 Window
  • C# 编译器与委托构造函数的奇怪之处

    基于以下问题 我发现 c 编译器有一些奇怪的行为 以下是有效的 C static void K static void Main var k new Action new Action new Action K 我确实觉得奇怪的是编译器 解
  • Javascript 有向无环图库? (图形可视化不是必需的)

    我有一个最好用图表表示的数据集 它由 6 或 7 个不同 类型 的节点组成 具有有向边 相互依赖 保证不具有循环依赖 数据集本质上是分层配置的模板 用户需要能够从所需的不同层中选择配置的位和片段 并自动引入相关位 一般的 UI 需求是用户从
  • 计算数据框中两列的平均值

    我有一个存储不同值的数据框 样本 a open a high a low a close 1 08648 1 08707 1 08476 1 08551 1 08552 1 08623 1 08426 1 08542 1 08542 1 0
  • 使用 PHP 将简单的 Excel 数据导出到 MySQL

    我的客户得到了一个具有以下结构的 Excel 文件 name email Name email here Name email here Name email here Name email here Name email here Nam
  • 如何将 ggplot 标题与窗口而不是绘图网格对齐?

    In ggplot2版本 0 9 更改了绘图标题的对齐方式 在 v0 8 9 中 对齐是相对于绘图窗口的 而在 v0 9 中 对齐是相对于绘图网格的 现在 虽然我基本上同意这是理想的行为 但我经常有很长的情节标题 问题 有没有办法将绘图标题
  • 如何以编程方式将表滚动到特定的 tr

    我想使用 Javascript 或 jquery 将 html 表滚动到特定的 tr 目前我可以获得所选 tr 的偏移量 并且我正在使用 scrollTop 方法 我已经尝试了以下方法 但它对我不起作用 var table document
  • MongoParseError:不支持选项 useCreateIndex、useFindAndModify

    我尝试运行它 它说像标题一样的错误 和 这是我的代码 const URI process env MONGODB URL mongoose connect URI useCreateIndex true useFindAndModify f
  • innodb 隔离级别和锁定

    我正在阅读一本关于 innodb 事务的手册 但仍然有很多不清楚的东西 例如 我不太理解以下行为 client 1 client 2 mysql gt create table simple col int engine innodb my
  • 如何推送到远程当前的 git 分支,并立即反映更改?

    我有 2 台网络服务器 一台正在测试 一台正在运行 两者的代码库都使用 git 进行管理 我在测试服务器上进行开发 然后将更改从测试服务器上的主分支推送到实时服务器git push 但是 目前我必须登录到实时服务器并运行git reset
  • 可与 Angular.js 一起使用

    我正在尝试使用 footable http themergency com footable demo responsive container htm 以及 angular js 随着窗口大小的减小 仅当单击加号时才会显示第 3 4 5
  • Nginx 从不同的服务器提供 php 文件

    我正在尝试配置 nginx 以从另一台服务器提供 PHP 服务 这些文件可以位于其他服务器上 sample 下的目录中 Fast CGI 正在另一台服务器的端口 9000 上运行 这是我尝试过的 目前不起作用 location php pr
  • Delphi应用程序在调试时出现“无调试信息”

    我们构建了一个使用包和组件的应用程序 当我们调试应用程序时 IDE 中的 事件日志 通常会显示我们的 BPL 正在加载 但没有调试信息 无调试信息 这是没有意义的 因为我们所有的包和 EXE 都是通过调试构建的 each project O
  • WPF 本身支持读取/写入 WMF/EMF 文件吗?

    Windows Presentation Foundation 可以在不使用 WinForms Interop 或 Win32 的情况下读取 写入 WMF EMF 文件吗 如果没有 原因是什么 在 MSDN 上快速搜索发现a thread包
  • 停用 Jetty 的默认 404 错误处理程序

    我想在 Spring 3 1 Web 应用程序中提供自定义 404 错误页面 但我无法停用 Jetty 8 的默认 404 错误页面 Jetty 8 开箱即用 提供默认的 404 错误页面 当访问 Jetty 托管的网站并提供不由任何 se
  • MVC 与 n 层架构

    我想知道 MVC 一种架构模式 和应用程序的 n 层架构之间到底有什么区别 我搜索过但找不到简单的解释 可能我对 MVC 概念有点天真 所以如果有人能解释其中的区别那就太好了 N 层架构通常由网络分隔各层 IE 表示层位于某些 Web 服务
  • 在 Python 中设置配置文件的最佳方法是什么

    我意识到这个问题之前被问过 在 Python 中使用设置文件的最佳实践是什么 但鉴于这是 7 年前提出的问题 我认为随着技术的发展 再次讨论是有效的 我有一个 python 项目 需要根据环境变量的值使用不同的配置 由于使用环境变量来选择配
  • 折叠字符串中的空格

    我有一个看起来像这样的字符串 stuff more stuff stuff gt DD 我想去掉所有标点符号 将所有内容设为大写并折叠所有空格 使其看起来像这样 STUFF MORE STUFF STUFF DD 这可以通过一个正则表达式实