gpt4 book ai didi

java - 如何使用 Java 格式化一周中的几天字符串?

转载 作者:行者123 更新时间:2023-12-01 12:39:44 24 4
gpt4 key购买 nike

使用 Java 6,并使用一个输入字符串(来自此类条目的数组),该字符串包含按以下顺序排列的星期几的任意组合

MTWThF

如何格式化字符串以便得到

M,T,W,Th,F(即除了最后一天之外的每一天后面的逗号)

该字符串表示员工的工作日。再次强调一下,这里有一个“陷阱”(不是 Java 双关语)——任何员工都可以任意组合工作时间。

因此,输入有时可能是

兆瓦

所以输出应该是

中、宽

我已经使用了replaceAll()方法,并且已经接近了,但是我必须在字符串上多次调用该方法才能做到这一点。
所以我想也许有人以前做过这个——或者类似的事情——并找到了一种更简单的方法。谢谢

最佳答案

String work = ...;
String csvwork = work.replaceAll( "(?<=.)([FMTW])", ",$1" )

在这里,(?<=.)零宽度正向后查找非捕获组:后面的内容匹配与其中的模式匹配的任何内容,即 (?<= 中的句点。 。 ) 。这是与 all character class 匹配的模式。因此,以下模式锚定在任何字符之后。第二部分([FMTW])是匹配由 F、M、T 或 W 之一组成的单个字符的捕获组。因此,整个模式匹配任何字符后面的任何 F、M、T 或 W。 replaceAll 的第二个参数将 F/M/T/W 的替换定义为由逗号和(第一个也是唯一的)捕获组捕获的任何内容组成。

关于java - 如何使用 Java 格式化一周中的几天字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25231185/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com