JJ.Framework.Text
1.5.6877.41321
Prefix Reserved
dotnet add package JJ.Framework.Text --version 1.5.6877.41321
NuGet\Install-Package JJ.Framework.Text -Version 1.5.6877.41321
<PackageReference Include="JJ.Framework.Text" Version="1.5.6877.41321" />
paket add JJ.Framework.Text --version 1.5.6877.41321
#r "nuget: JJ.Framework.Text, 1.5.6877.41321"
// Install JJ.Framework.Text as a Cake Addin #addin nuget:?package=JJ.Framework.Text&version=1.5.6877.41321 // Install JJ.Framework.Text as a Cake Tool #tool nuget:?package=JJ.Framework.Text&version=1.5.6877.41321
JJ.Framework.Text
Basic helpers for working with text.
- String extensions for trimming and cutting.
- Case formatting
String.Split
overloadsSplitWithQuotation
StringBuilderWithIndentation
String Extensions
Left
/Right
- Returns the left or right part of a string. Throws an exception if the string has less characters than the length provided.
FromTill
- Takes the middle of a string by specifying the zero-based start index and the end index. Throws an exception if the string has less characters than the length provided.
TakeStart
/TakeEnd
- Returns the left or right part of a string. Can return less characters than the length provided, if string is shorter.
TakeStartUntil
/TakeEndUntil
- Takes the part of a string until the specified delimiter. Excludes the delimiter itself.
TrimStart
/TrimEnd
- Will trim off repetitions of the same value from the given string. These are variations of the standard .NET methods that instead of just taking
char[]
can take a string or a length.
- Will trim off repetitions of the same value from the given string. These are variations of the standard .NET methods that instead of just taking
TrimStartUntil
/TrimEndUntil
- Cuts off the part of a string until the specified delimiter and returns what remains including the delimiter itself.
TrimFirst
/TrimLast
- Will trim off at most one occurrence of a value from the given string.
RemoveExcessiveWhiteSpace
- Trims and replaces sequences of two or more white space characters by a single space.
Repeat
- Repeat a string a number of times, returning a single string.
Replace
- Variation on
String.Replace
with the ability to ignore case.
- Variation on
String Extensions for Case Formatting
StartWithCap
- Turns the first character into a capital letter.
StartWithLowerCase
- Turns the first character into a lower-case letter.
ToCamelCase
- Converts e.g. "This is a sentence." to "thisIsASentence" so it can be used in code.
SplitWithQuotation
Allows you to parse CSV-like lines including quotation for the ability to include the separator character in the values themselves.
String Split Variations
The notoriously missing String.Split
overloads, like:
myString.Split("].");
StringBuilderWithIndentation
You would think StringBuilder
might have an Indent
and an Unindent
method. It doesn't. Here's one that does:
var sb = new StringBuilderWithIndentation();
sb.AppendLine($"public class {generatedClassName}");
sb.AppendLine("{");
sb.Indent();
{
sb.AppendLine("public void MyMethod()");
sb.AppendLine("{");
sb.Indent();
{
sb.AppendLine(methodBody);
sb.Unindent();
}
sb.AppendLine("}");
sb.Unindent();
}
sb.AppendLine("}");
StringHelper.Join
A variation on String.Join
, but takes char
as the separator instead of String
.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net461 is compatible. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
This package has no dependencies.
NuGet packages (5)
Showing the top 5 NuGet packages that depend on JJ.Framework.Text:
Package | Downloads |
---|---|
JJ.Framework.Reflection
Expressions like "myParam.MyList[i].MyProperty" can be converted to text or their value retrieved or info like { "MyMethod", Parameters = { "myParameter", int, 3 } } Accessor IsIndexer IsNullableType IsProperty IsReferenceType IsStatic IsSimpleType IsDefault GetBaseClasses GetImplementations GetItemType GetPropertyOrException GetUnderlyingNullableTypeFast TypesFromObjects. ReflectionCache with fast GetProperties GetFields GetConstructor GetTypeByShortName. Overloads for PropertInfo.GetValue IsAssignableFrom IsAssignableTo CreateInstance. |
|
JJ.Framework.Exceptions
Contains many exception classes for common basic errors. Clear messages, concise syntax, strongly-typed, good performance. Generates messages like "myParent.MyChildren[0].MyProperty is null.", "height of 2 is less than 10.", "Customer with key { customerNumber = 1234, customerType = Subscriber } not found." |
|
JJ.Framework.Xml
XmlToObjectConverter converts an XmlDocument or string to an object graph. The way to map XML to classes is easier than the classic ways in .NET. XmlHelper allows you to access XML in a null-safe and multiplicity-safe way. It uses XmlDocument as the underlying .NET API. |
|
JJ.Framework.IO
CsvReader FileLock PathParser SafeFileOverwriter GetNumberedFilePath StreamToBytes BytesToStream StreamToString StringToStream StringToBytes BytesToString ReadStruct WriteStruct ClearFolder ClearFolderRecursive GetFolderSize GetFolderSizeRecursive CountFilesRecursive IsFolder IsFile FolderIsEmpty IsReadOnly IsHidden MakeReadOnly MakeWritable ShowFile HideFile ToAbsolutePath ToRelativePath PathsAreEqual AssertFileExists |
|
JJ.Framework.Business
Classes to support a business logic layer or an API. Keep child-parent relationships in sync. Wrap a result with data along with a Successful flag and a list of messages. Keep business logic units separate, implementing ISideEffect. Check whether a list is dirty. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.5.6877.41321 | 3,006 | 10/31/2018 |
1.4.6869.43189 | 718 | 10/22/2018 |
1.4.6869.43111 | 729 | 10/22/2018 |
1.4.6869.42917 | 693 | 10/22/2018 |
1.4.6869.42092 | 709 | 10/22/2018 |
1.4.6862.40435 | 33,855 | 10/15/2018 |
1.3.6683.35352 | 1,504 | 4/19/2018 |
1.2.6640.38990 | 6,406 | 3/7/2018 |
1.1.0.31223 | 6,785 | 3/4/2018 |
1.0.6633.36116 | 941 | 2/28/2018 |
1.0.6632.42021 | 961 | 2/27/2018 |
1.0.6632.41567 | 847 | 2/27/2018 |
1.0.6632.38204 | 935 | 2/27/2018 |
1.0.6632.36514 | 860 | 2/27/2018 |
1.0.0.41311 | 1,005 | 2/26/2018 |
1.0.0 | 12,058 | 2/25/2018 |