var result = new string(массив символов);
var value = "a ack fghjy fghfh asn 98501 xbancd23das";
string result = String.Join
(
" ",
value.Split().Select
(
w => new string(w.OrderBy(ch => ch).ToArray())
).OrderBy(w => w)
);
Console.WriteLine(result);
using System;
using System.Diagnostics;
using System.Text.RegularExpressions;
public class Program
{
private static Stopwatch w = new Stopwatch();
private static string data = "0x00 00 00 00 00 00 00 00 00 00 3A 00 F1 10 30 00 ..............09";
public static void Main()
{
SubstringAndTrim1();
SubstringAndTrim2();
SubstringAndTrim3();
RegExp1();
RegExp2();
}
private static void SubstringAndTrim1()
{
w.Restart();
string result = data.Substring(0, data.IndexOf(".")).TrimStart("0x ".ToCharArray());
w.Stop();
Console.WriteLine("Substring + Trim #1:\t {0}", w.Elapsed);
Console.WriteLine(result);
Console.WriteLine();
}
private static void SubstringAndTrim2()
{
w.Restart();
string result = data.Substring(2).TrimStart("0 ".ToCharArray()).TrimEnd("0123456789.".ToCharArray()).Trim();;
w.Stop();
Console.WriteLine("Substring + Trim #2:\t {0}", w.Elapsed);
Console.WriteLine(result);
Console.WriteLine();
}
private static void SubstringAndTrim3()
{
w.Restart();
string result = data.Substring(2, data.IndexOf(".") - 2).TrimStart("0 ".ToCharArray());
w.Stop();
Console.WriteLine("Substring + Trim #3:\t {0}", w.Elapsed);
Console.WriteLine(result);
Console.WriteLine();
}
private static void RegExp1()
{
w.Restart();
var reg = new Regex(@"0x(00 )+(.+) \.");
var match = reg.Match(data);
string result = match.Groups[2].Value;
w.Stop();
Console.WriteLine("RegExp #1:\t\t\t {0}", w.Elapsed);
Console.WriteLine(result);
Console.WriteLine();
}
private static void RegExp2()
{
w.Restart();
var reg = new Regex(@"0[x][0]+([1-90a-fA-F]+)");
string result = "";
foreach (Match m in reg.Matches(data.Replace(" ", String.Empty)))
{
if (m.Success)
{
result += m.Groups[1].Value;
}
}
w.Stop();
Console.WriteLine("RegExp #2:\t\t\t {0}", w.Elapsed);
Console.WriteLine(result);
Console.WriteLine();
}
}
Substring + Trim #1: 00:00:00.0000107
3A 00 F1 10 30 00
Substring + Trim #2: 00:00:00.0000072
3A 00 F1 10 30 00
Substring + Trim #3: 00:00:00.0000058
3A 00 F1 10 30 00
RegExp #1: 00:00:00.0013962
3A 00 F1 10 30 00
RegExp #2: 00:00:00.0005510
3A00F1103000
А как быть, если у меня помимо основной таблицы есть еще дочерние, в которые записываются данные, которых может быть больше чем один экземпляр, которые принадлежат к одной записи из основной таблицы. Тут никак без циклов, если XML генерируем.
Возможно, быстрее будет просто сгенерировать огромную строчку с кучей инсертов?
То бишь, забиваем DataTable идентификаторами, далее генерируем xml из всех данных, которых еще нет в базе, и передаем ее в хранимую процедуру? я правильно все понял?
Если так, то без циклов в процедуре не обойтись.
// запоминаем
var myTask = $('input[name=add-task]').val();
// очищаем
$("input[name=add-task]").val('');
// используем то, что запомнили
$('.border-info').append
(
'<div class="task">' +
'<input type="checkbox" name="post" class="write-post">' +
'<span class="vall">' + myTask +
'</span></div>'
);
// используем
$('.border-info').append
(
'<div class="task">' +
'<input type="checkbox" name="post" class="write-post">' +
'<span class="vall">' + $('input[name=add-task]').val() +
'</span></div>'
);
// очищаем
$('input[name=add-task]').val('');
Session["privet"] = "Привет";
Response.Redirect("~/General/Services", false);
return View();
Значит значение будет храниться в виде строки? Зачем мы еще используем ToString? Мы же не объект храним? Или я не прав?
// переменная sessionItem типа object
// может использоваться для хранения любых типов данных
object sessionItem = "Привет";
// переменная test типа string
// преобразуем sessionItem в строку
string test = sessionItem.ToString();
sessionItem = 123;
// переменная num типа int
// преобразуем sessionItem в int
int num = (int)sessionItem;
А применении точки в названии ключа сессии приводит к возвращению объекта?
Я обычно пишу на php и там нету проблем в названии ключа для сессии, с точкой или нижнем дефисом, поэтому я предположил что здесь тоже нет разницы.
Или как вы определили, что сессия возвращает объект?
Я банально создал две страницы. При вызове первой, данные сохраняются в сессии.