标签: string-formatting

在Scala中格式化二进制值

Scala是否有内置的二进制数据格式化程序?

例如,打印输出:00000011表示Int值3.

写一个并不难 - 只是好奇它是否存在.

scala string-formatting

31
推荐指数
4
解决办法
2万
查看次数

在进行字符串格式化时,字段名称中出现意外的"{"

我正在尝试编写一个小脚本,它将自动化我需要编写的一些PHP样板.它应该将字符串的副本写入code输出文件,并为fields列表中的每个字典填写各种替换字段.

但是,我收到错误:

Traceback (most recent call last):
    File "writefields.py", line 43, in <module>
        formatted = code.format(**field)
ValueError: unexpected '{' in field name
Run Code Online (Sandbox Code Playgroud)

据我所知,替换领域或应该导致问题的决定没有额外的括号,所以任何帮助将不胜感激.

code = '''
// {label}
add_filter( 'submit_job_form_fields', 'frontend_add_{fieldname}_field' );
function frontend_add_{fieldname}_field($fields) {
    $fields['job']['job_{fieldname}'] = array(
        'label' => __('{label}', 'job_manager'),
        'type' => 'text',
        'required' => {required},
        'priority' => 7,
        'placeholder' => '{placeholder}'
    );
    return $fields;
}
add_filter( 'job_manager_job_listing_data_fields', 'admin_add_{fieldname}_field' );
function admin_add_{fieldname}_field( $fields ) {
  $fields['_job_{fieldname}'] = array(
    'label'       => __( '{label}', 'job_manager' ), …
Run Code Online (Sandbox Code Playgroud)

python string-formatting python-3.x

31
推荐指数
1
解决办法
1万
查看次数

如何使用printf自定义自定义类型的输出?

我已经阅读了很多专家F#,正在构建一个实际的应用程序.在调试时,我已经习惯于传递这样的fsi命令,以使repl窗口中的内容清晰可见:

fsi.AddPrinter(fun (x : myType) -> myType.ToString())
Run Code Online (Sandbox Code Playgroud)

我想扩展它以使用printf格式化程序,所以我可以输入例如

printf "%A" instanceOfMyType 
Run Code Online (Sandbox Code Playgroud)

并控制自定义类型的输出.本书暗示可以做到这一点(第93页,"可以扩展通用结构格式以适用于任何用户定义的数据类型,F#网站上涵盖的主题"),但我没有找到任何关于如何实际上实现这一点.有谁知道怎么样?它甚至可能吗?

编辑:

我应该包含一个代码示例,它是我正在处理的记录类型,例如

type myType = 
    {a: int}        
    override m.ToString() = "hello"

let t = {a=5}
printfn "%A" t
printfn "%A" (box t)  
Run Code Online (Sandbox Code Playgroud)

两个印刷语句产生:

{a = 5;}
Run Code Online (Sandbox Code Playgroud)

printf f# string-formatting f#-interactive

30
推荐指数
2
解决办法
9423
查看次数

如何从像@"xxx =%@,yyy =%@"和NSArray对象这样的格式字符串创建NSString?

有没有办法从像@"xxx =%@,yyy =%@"和NSArray对象这样的格式字符串创建一个新的NSString?

在NSSTring类中有许多方法,如:

- (id)initWithFormat:(NSString *)format arguments:(va_list)argList
- (id)initWithFormat:(NSString *)format locale:(id)locale arguments:(va_list)argList
+ (id)stringWithFormat:(NSString *)format, ...
Run Code Online (Sandbox Code Playgroud)

但是没有它们将NSArray作为参数,我找不到从NSArray创建va_list的方法......

cocoa objective-c string-formatting nsstring nsarray

30
推荐指数
3
解决办法
5万
查看次数

bash中两个字符串的最长公共前缀

我有两个字符串.为了示例,它们设置如下:

string1="test toast"
string2="test test"
Run Code Online (Sandbox Code Playgroud)

我想要的是从字符串的开头找到重叠.对于重叠,我的意思是上面例子中的字符串"test t".

# So I look for the command 
command "$string1" "$string2"
# that outputs:
"test t"
Run Code Online (Sandbox Code Playgroud)

如果字符串是,string1="atest toast"; string2="test test"它们将没有重叠,因为检查从开头开始,而"a"在开头string1.

bash string-formatting

30
推荐指数
7
解决办法
7566
查看次数

C++ 11是否提供了更好的连接字符串的方法?

我已经看到了这个答案,我想(如果C++ 11已经提出了一种本地更好的方法来连接和可能格式化字符串).

"更好"我的意思实际上单行,就像在几乎所有更高级别的语言中一样(如果它支持像python的"格式化字符串"%(元组)语法这样的奖励点,但我想这真的是希望太多了).

理想的结果应该是这样的:

my_func("bla bla bla" << int(my_int) << "bla bla bla");
Run Code Online (Sandbox Code Playgroud)

答案中列出的唯一几乎不可接受的方法是快速格式化的方法,但我想知道C++ 11是否能够做得更好.

c++ string concatenation string-formatting c++11

30
推荐指数
1
解决办法
1万
查看次数

如何在Swift中格式化本地化字符串?

我正在学习将我的应用本地化为简体中文.我正在按照本教程了解如何执行此操作.

因为本教程基于Obj-C,所以格式化的字符串可以这样写:

"Yesterday you sold %@ apps" = "Ayer le vendi&oacute; %@ aplicaciones";
Run Code Online (Sandbox Code Playgroud)

"你喜欢?" ="~Es bueno?〜";

但我正在使用Swift.在Swift中,我认为你不能%@用来表明那里有东西可以放置.我们有字符串插值吗?

我的应用程序与数学有关.我想显示哪些输入用于计算表格视图单元格的详细标签中的结果.例如

--------------
1234.5678
From x, y <---- Here is the detailed label
--------------
Run Code Online (Sandbox Code Playgroud)

这里,From x, y表示"结果是从x和y计算的".我想把它翻译成中文:

? x, y ??
Run Code Online (Sandbox Code Playgroud)

之前,我可以使用这个:

"From \(someVariable)"
Run Code Online (Sandbox Code Playgroud)

与字符串文件:

"From" = "? ??";
Run Code Online (Sandbox Code Playgroud)

这就是我在代码中使用它的方式

"\(NSLocalizedString("From", comment: "")) \(someVariable)"
Run Code Online (Sandbox Code Playgroud)

但如果在中文版本中使用它,最终的字符串将是这样的:

"? ?? x, y"
Run Code Online (Sandbox Code Playgroud)

我的意思是我可以把???在字符串文件两个不同的条目.但有更好的方法吗?

string-formatting internationalization ios swift

30
推荐指数
2
解决办法
2万
查看次数

如何使用字符串格式显示BOTH前导零和3的精度?

我试图用前导零和尾随零来表示一个数字,以便总宽度为7,包括小数点.例如,我想将"5"表示为"005.000".似乎字符串格式化将让我做一个或另一个但不是两个.这是我在Ipython中得到的输出,说明了我的问题:

In [1]: '%.3f'%5
Out[1]: '5.000'

In [2]: '%03.f'%5
Out[2]: '005'

In [3]: '%03.3f'%5
Out[3]: '5.000'
Run Code Online (Sandbox Code Playgroud)

第1行和第2行完全符合我的预期.第3行只是忽略了我想要前导零的事实.有任何想法吗?谢谢!

python string-formatting

29
推荐指数
3
解决办法
1万
查看次数

格式化BigDecimal,没有科学记数法,具有完全精度

我想一个转换BigDecimalString印刷的目的,但打印出所有的数字没有科学记数法.例如:

BigDecimal d = BigDecimal.valueOf(12334535345456700.12345634534534578901);
String out = d.toString(); // Or perform any formatting that needs to be done
System.out.println(out);
Run Code Online (Sandbox Code Playgroud)

我想要12334535345456700.12345634534534578901打印.现在我得到:1.23345353454567E+16.

java string-formatting bigdecimal

29
推荐指数
2
解决办法
3万
查看次数

如何让Python优雅地格式化None和不存在的字段

如果我用Python写:

data = {'n': 3, 'k': 3.141594, 'p': {'a': 7, 'b': 8}}
print('{n}, {k:.2f}, {p[a]}, {p[b]}'.format(**data))
del data['k']
data['p']['b'] = None
print('{n}, {k:.2f}, {p[a]}, {p[b]}'.format(**data))
Run Code Online (Sandbox Code Playgroud)

我明白了:

3, 3.14, 7, 8
Traceback (most recent call last):
  File "./funky.py", line 186, in <module>
    print('{n}, {k:.2f}, {p[a]}, {p[b]}'.format(**data))
KeyError: 'k'
Run Code Online (Sandbox Code Playgroud)

而不是错误消息,我如何让Python更优雅地格式化None和不存在的字段?

举个例子,我想在输出中看到更像:

3, 3.14, 7, 8
3, ~, 7, ~
Run Code Online (Sandbox Code Playgroud)

当然,理想情况下,我希望能够指定使用的字符串而不是那些缺少的值.

python string-formatting missing-data

28
推荐指数
3
解决办法
2万
查看次数