BadScript 2
Loading...
Searching...
No Matches
StringExtensions.cs
Go to the documentation of this file.
1// Copyright 2005-2015 Giacomo Stelluti Scala & Contributors. All rights reserved. See License.md in the project root for license information.
2
3using System;
4using System.Globalization;
5using System.Text;
6
8{
9 internal static class StringExtensions
10 {
11 public static string ToOneCharString(this char c)
12 {
13 return new string(c, 1);
14 }
15
16 public static string ToStringInvariant<T>(this T value)
17 {
18 return Convert.ToString(value, CultureInfo.InvariantCulture);
19 }
20
21 public static string ToStringLocal<T>(this T value)
22 {
23 return Convert.ToString(value, CultureInfo.CurrentCulture);
24 }
25
26 public static string FormatInvariant(this string value, params object[] arguments)
27 {
28 return string.Format(CultureInfo.InvariantCulture, value, arguments);
29 }
30
31 public static string FormatLocal(this string value, params object[] arguments)
32 {
33 return string.Format(CultureInfo.CurrentCulture, value, arguments);
34 }
35
36 public static string Spaces(this int value)
37 {
38 return new string(' ', value);
39 }
40
41 public static bool EqualsOrdinal(this string strA, string strB)
42 {
43 return string.CompareOrdinal(strA, strB) == 0;
44 }
45
46 public static bool EqualsOrdinalIgnoreCase(this string strA, string strB)
47 {
48 return string.Compare(strA, strB, StringComparison.OrdinalIgnoreCase) == 0;
49 }
50
51 public static int SafeLength(this string value)
52 {
53 return value == null ? 0 : value.Length;
54 }
55
56 public static string JoinTo(this string value, params string[] others)
57 {
58 StringBuilder builder = new StringBuilder(value);
59
60 foreach (string v in others)
61 {
62 builder.Append(v);
63 }
64
65 return builder.ToString();
66 }
67
68 public static bool IsBooleanString(this string value)
69 {
70 return value.Equals("true", StringComparison.OrdinalIgnoreCase) ||
71 value.Equals("false", StringComparison.OrdinalIgnoreCase);
72 }
73
74 public static bool ToBoolean(this string value)
75 {
76 return value.Equals("true", StringComparison.OrdinalIgnoreCase);
77 }
78
79 public static bool ToBooleanLoose(this string value)
80 {
81 if (string.IsNullOrEmpty(value) ||
82 value == "0" ||
83 value.Equals("f", StringComparison.OrdinalIgnoreCase) ||
84 value.Equals("n", StringComparison.OrdinalIgnoreCase) ||
85 value.Equals("no", StringComparison.OrdinalIgnoreCase) ||
86 value.Equals("off", StringComparison.OrdinalIgnoreCase) ||
87 value.Equals("false", StringComparison.OrdinalIgnoreCase))
88 {
89 return false;
90 }
91
92 return true;
93 }
94 }
95}
static int SafeLength(this string value)
static bool EqualsOrdinalIgnoreCase(this string strA, string strB)
static bool EqualsOrdinal(this string strA, string strB)
static string ToStringInvariant< T >(this T value)
static string FormatLocal(this string value, params object[] arguments)
static bool ToBooleanLoose(this string value)
static string JoinTo(this string value, params string[] others)
static bool IsBooleanString(this string value)
static string ToStringLocal< T >(this T value)
static string FormatInvariant(this string value, params object[] arguments)
static bool ToBoolean(this string value)