如何清理文本中未对齐的列?

2024-06-18

我有一个 C 程序,它输出两列,完全不对齐。未对齐的原因是第一列中单词的长度差异很大。

我有一个在 vi 中打开的输出文件。如何快速对齐这两列?我可以使用 awk、perl、sed,而不仅仅是 vi (7.2) 工具集。另外,我们是否可以为具有两列以上的文件提供通用的解决方案?

这是示例文件

column1               column2
-------               -------
sdfsdfsddfsdfsdfsdfsd         343r5
dfgdfgdf             234
gdfgdfgdfgdfgf            645

想必您正在使用printf首先输出列。您可以在格式字符串中使用额外的修饰符来确保内容对齐。

  • 要打印特定宽度的列(右对齐),请在格式标志前添加宽度,例如,“%10s”将打印宽度为 10 的列。如果字符串长度超过 10 个字符,则该列会更长比你想要的要大,所以选择一个最大值。如果字符串较短,则会用空格填充。
  • 要左对齐列,请在前面放置一个 - 号,例如“%-10s”。就个人而言,我喜欢左对齐字符串和右对齐数字。
  • 如果要打印地址,可以将填充字符从空格更改为带有前导零的零:“%010x”。

举一个更深入的例子:

printf("%-30s %8s %8s\n", "Name", "Address", "Size");
for (i = 0; i < length; ++i) {
    printf("%-30s %08x %8d\n", names[i], addresses[i], sizes[i]);

这将打印三列,如下所示:

Name                            Address     Size
foo                            01234567      346
bar                            9abcdef0     1024
something-with-a-longer-name   0000abcd     2048
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何清理文本中未对齐的列? 的相关文章

  • 图像上的文字

    是否可以在 php 中动态地将文本放置在图像上 然后将其发送到 rss feed 是的 可以使用GD http www php net gd函数或图像魔术师 http www php net imagemagick功能 具体取决于您的服务器
  • 如何使用Python在没有窗口的情况下在屏幕上显示文本

    问题 我需要在没有窗口的情况下直接将文本写入屏幕 文本需要显示在所有其他窗口和全屏应用程序之上 并且不应以任何方式单击或交互 Example The text doesn t need to have a transparent backg
  • TinyMCE:如何禁用代码重写?

    我试图阻止 TinyMCE 在 Joomla 中 重写代码 添加 删除 移动标签和属性等 我不想设置每个标签 只需阻止 TinyMCE 更改我的代码即可 TinyMCE配置 verify html false 对我来说不起作用 切换到源代码
  • Linux - 从第二个选项卡获取文本

    假设我们有这样的文件 一些文本11 一些文本12 一些文本13 一些文本21 一些文本22 一些文本23 文本由制表符分隔 我们知道第 1 列中的一些文本 但希望从第 2 列中获取文本 我知道我可以通过以下方式获取线路 grep somet
  • 如何在 html 画布上使文本适合精确的宽度?

    如何在 html5 画布上将单行文本字符串调整为精确的宽度 到目前为止我尝试过的是以初始字体大小编写文本 测量文本的宽度measureText my text width 然后根据我想要的文本宽度和实际文本宽度之间的比例计算新的字体大小 它
  • RichTextbox SelectionStart 返回错误的索引

    我需要向用户显示光标上文本的选择开始和长度 就像在 notepad exe 中一样 选择长度没有问题 因为 Richtextbox 支持带有开始和结束的选择属性 http msdn microsoft com en us library s
  • Notepad++:: 通过正则表达式完全删除包含问号的行

    嗯 我想这就是我的标题 这对于我将要实现的目标来说是不言自明的 这是我当前的文本文件的示例 Diva was the winning song of the Eurovision Song Contest 1998 Who will win
  • 在两个数字之间设置 UILabel 文本动画?

    我是 iPhone 和 Mac 编程新手 之前为 Windows 开发过 我有一个问题 我如何制作动画text的财产UILabel两个数字之间 例如从5 to 80以 Ease Out 风格 是否可以与CoreAnimation 我已经在谷
  • 如何区分哪些 unicode 字符是字母(单词)还是标点符号?

    我想检测文本中的单词 即我需要知道给定文本中的哪些字符是字母 即它们可以是 口语 单词的一部分 另一方面 哪些字符是标点符号等 例如 在上面的句子中 我 想要 和 i 和 e 是这方面的单词 而空格 和逗号则不是 这样做的困难在于我希望能够
  • SQL Server 文本数据类型最大长度 = 65,535?

    我正在使用的软件使用文本字段来存储 XML 根据我的在线搜索 文本数据类型应该包含 2 31 1 个字符 目前 SQL Server 每次都会将 XML 截断为 65 535 个字符 我知道这是由 SQL Server 引起的 因为如果我直
  • 在组合框中设置所选项目 - vb.net

    我正在使用此代码向与显示的不同的组合框添加一个值 如何为组合框项目添加值 https stackoverflow com questions 1887388 how to add value to combobox item 假设我的组合框
  • PHP:查找文本中带空格和不带空格的重复单词

    我可以使用此函数找到文本中重复的单词 str bob is a good person mary is a good person who is the best are you a good person bob is the best
  • 如何显示数字键盘

    我阅读了其他几篇文章并使用 input setInputType TYPE NUMBER FLAG DECIMAL 确实打开了键盘 但不是数字键盘 这有什么技巧吗 give android inputType number 在你的 xml
  • docx 模板 Docx4j 替换 Java 中的文本

    我是 Docx4j 的新手 我的任务是替换 docx 模板的一些文本 我阅读了 docx4j 的入门指南 但我认为我没有完全理解整个概念 好吧 无论如何 我已经尝试过 Docx4j 的解压模板 1 它与给定的 docx 配合得很好 但是当我
  • UIButton 中的文本下划线

    谁能建议如何在 UIButton 的标题下划线 我有一个自定义类型的 UIButton 我希望标题带有下划线 但 Interface Builder 没有提供任何选项来执行此操作 在 Interface Builder 中 当您为按钮选择字
  • 如何将焦点集中到 python Tkinter 文本小部件?

    我希望能够打开应用程序 GUI 并让它自动将光标放置到特定的文本小部件中 最好的情况是 应用程序启动后 有人就可以开始输入 而无需单击文本小部件 这只是显示问题的一个小示例 from Tkinter import root Tk Windo
  • 使用 C# 从文本中删除数字

    我有一个要处理的文本文件 其中有一些数字 我只想要其中的文字 而不是其他任何东西 我成功删除了标点符号 但是如何删除数字呢 我想要使 用 C 代码 另外 我想删除长度大于 10 的单词 如何使用 Reg 表达式来做到这一点 您可以使用正则表
  • .net 的自动完成文本框,支持分隔符

    我正在开发一个应用程序 它需要一个带有多个单词的自动完成 建议 下拉 的文本框 由空格等分隔符分隔 就像 StackOverflow 中的标签文本框一样 例如 我开始输入 app 它应该显示建议列表中以以下内容开头的所有单词app 当我输入
  • MySQL 的 TEXT 类型的 Oracle 等效项

    Oracle 是否有与 MySQL 等效的列类型TEXT type 如果不是 那么通常如何存储较大的文本块 BLOB varchar 32767 如果重要的话 它是通过 PHP 访问 Oracle 10 历史背景是非常受欢迎的 Oracle
  • 在 Jquery 数据表搜索框中添加提示文本的问题

    使用诸如 watermark js 之类的插件在 Jquery 数据表的搜索字段中添加灰色提示文本不是一个选项 我必须自定义编写它 我快到了 但面临着这个小而奇怪的问题 下面的代码片段解释了这一点 function toggleHintTe

随机推荐

  • 调用 OneDrive 图形 API 时出现异常

    今天 我们开始在以前正常工作的解决方案中遇到异常 如下所示 从对组 OneDrive 的 v1 端点的 Graph API 调用 GET v1 0 groups xxxxx drive root Microsoft Graph Servic
  • Laravel - 记录“找不到路线”

    当找不到路线时 我没有看到任何日志输出 我在开发模式下运行 laravel 当遇到不存在的路线时 我会看到此错误 message exception Symfony Component HttpKernel Exception NotFou
  • 如何从 asp.net MVC 4 应用程序中的 FileResult 方法返回错误消息?

    我在 asp net mvc4 中有一个 fileresult 方法 它返回 Excel 文件中的报告 现在 如果不满足我的条件 我如何从该方法返回错误消息 既然我们只能从这个方法返回一个文件 谢谢 您可以将操作方法 的签名更改为publi
  • 如何将docker postgres镜像10.3中的pg_restore升级到10.5

    我使用 tableplus 作为我的一般管理员 目前使用 10 3 版本的 docker postgres 镜像进行生产和本地主机开发 因为tableplus将他们的postgres 10驱动程序升级到了10 5 所以我不能再使用pg re
  • 是什么导致 WPF 打印机输出被光栅化?

    我在 WPF 中遇到了许多打印问题 其中正在打印的特定项目组合会突然触发打印机输出的光栅化 导致打印机输出丑陋且庞大 并可能导致打印每页需要 30 秒 我发现在控件上设置任何级别的不透明度之类的事情通常会触发此问题 我忘记了它还有什么作用
  • GMail 421 4.7.0 稍后重试,关闭连接

    我试图找出为什么它无法使用 GMail 从我的服务器发送邮件 为此 我使用 SwiftMailer 但我可以将问题包含在以下独立代码中
  • Pandas系列矢量化文本处理

    我想使用矢量化操作改进我的 Pandas 代码 假设我有一个简单的 DataFrame 其中有一个文本列 其中可能包含 url Column1 0 hello http www google com 1 bye www mail com w
  • C# 以编程方式设置 azure 函数时间触发器

    我想编写一个在时间触发器上工作的 C Azure 函数 其中计划是可变的 即每个函数运行将确定下一次运行的时间 因此应该能够更改下一个触发器的计划时间 您可以使用带有队列输出的队列触发器 这要归功于NextVisibleTime https
  • 如何从 RSS feed 中获取图像

    我正在尝试从 URL 获取 RSS 新闻http timesofindia indiatimes com rssfeeds 1945062111 cms http timesofindia indiatimes com rssfeeds 1
  • 如何使用列表理解从列表中删除重复的项目? [复制]

    这个问题在这里已经有答案了 如何使用列表理解从列表中删除重复的项目 我有以下代码 a 1 2 3 3 5 9 6 2 8 5 2 3 5 7 3 5 8 b b item for item in a if item not in b 但它不
  • MySQL 通过 current_timestamp 选择上个月的数据

    直到今天 当我使用 MySQL 并需要对日期 时间执行操作时 我使用带有 unix 时间戳的 int 列 没有出现任何问题 但今天在阅读了一些指南后 我决定默认使用 current timestamp 测试时间戳列 所以我感兴趣如何按列选择
  • 如何在 JAVA servlet 中处理压缩 (gzip) HTTP 请求(不是响应) - 简单示例?

    我为这个问题苦苦挣扎了很长一段时间 在找到一个简单的解决方案后 想问一个问题和答案 这个问题在堆栈溢出时以不同的方式被多次提出 并且accepted solutions是partially correct and complex或谈论res
  • 如何在 React 组件中使用 CDN

    我正在尝试使用基于 D3 构建的库 称为 Greuler 来动态渲染图形 它的 npm 包似乎已损坏 当我改用 Greuler CDN 时 index html 中的测试图终于起作用了 但是 我正在开发一个 React 应用程序 并且我希望
  • 如何获取一个类的所有实例

    我是一名初学者 正在学习 Python 我想创建一个课程Person 在构造函数中 我想将我创建的每个实例放入一个名为 实例 的集合中 然后我希望实例 方法返回所有实例 我怎样才能做到这一点 class Person Type annota
  • Shift 键在我的 emacs 中不起作用

    I run emacs in gnome terminal with nw option it works well except for some key shortcuts that include the shift key For
  • 如何在R中得到一个大的稀疏矩阵? (> 2^31-1)

    我使用一些 C 代码从数据库中获取文本文件 并从该文件创建 dgcMatrix 类型稀疏矩阵Matrix包裹 我第一次尝试构建一个具有超过 2 31 1 个非稀疏成员的矩阵 这意味着稀疏矩阵对象中的索引向量也必须比该限制长 不幸的是 向量似
  • 如何使用开发板上的加密处理器?

    在数据表上 SoM 配备了 ATECC608A 加密协处理器 但没有有关如何使用它的文档 该硬件是否有一些用例以及有关如何使用它的说明 该库包含在 Coral Cloud 存储库中 它通常与 Coral cloudiot 包 python3
  • 在 MySQL 中对整数字段运行带引号的数字(字符串)查询时会发生哪些复杂情况

    在 SQL 中 不应引用整数 因为如果引用 它将是一个字符串 但我很好奇如果我这样做会出现什么问题 并发症 例如 SELECT FROM table WHERE id 1 正确的 vs SELECT FROM table WHERE id
  • 为什么 Java 类加载器找不到我的接口?

    在下面的代码中 我使用动态生成一个类sun tools javac Main 我将使用反射创建此类的新实例 问题是 我想避免使用 Reflection 来调用我为此类定义的方法 因此我创建了一个 ProxyInvoker 来引用我在项目中定
  • 如何清理文本中未对齐的列?

    我有一个 C 程序 它输出两列 完全不对齐 未对齐的原因是第一列中单词的长度差异很大 我有一个在 vi 中打开的输出文件 如何快速对齐这两列 我可以使用 awk perl sed 而不仅仅是 vi 7 2 工具集 另外 我们是否可以为具有两