zoukankan      html  css  js  c++  java
  • 反转单词(C#实现)

    public static string ReverseWords(string array)

    {

    if (string.IsNullOrEmpty(array))

    {

    throw new ArgumentException("");

    }

    int arrLen = array.Length;

    char[] strNew = new char[arrLen + 1];

     

     

    //全部反转

    for (int index = 0; index < arrLen; index++)

    {

    strNew[index] = array[arrLen - 1 - index];

    }

    strNew[arrLen] = ' '; //为了复原最后一个单词,添加一个辅助空格

     

     

    int iStart = 0, iEnd = 0;

    char tmpChar;

     

     

    //复原单词

    for (int Index = 0; Index < arrLen + 1; Index++)

    {

    //Index指向空格

    if (strNew[Index] == ' ')

    {

    iEnd = Index - 1;

    while (iStart < iEnd)

    {

    tmpChar = strNew[iStart];

    strNew[iStart] = strNew[iEnd];

    strNew[iEnd] = tmpChar;

    iStart++;

    iEnd--;

    }

    iStart = Index + 1;//跳过空格

    }

    else if (strNew[Index] == '!' | strNew[Index] == ',' | strNew[Index] == '.' | strNew[Index] == ';')

    {

    iStart = Index + 1;//跳过标点

    }

    }

     

     

    //合成字符串

    array = string.Empty;

    for (int index = 0; index < strNew.Length - 1; index++)//去掉辅助的空格

    {

    array += strNew[index];

    }

    return array;

    }

  • 相关阅读:
    C#事务相关
    建造者模式
    CUPS/Printer sharing
    vim note write
    linux下神奇的script
    Nginx server之Nginx添加ssl支持
    nginx使用ssl模块配置HTTPS支持
    stardict dict url
    收银台(POSBox) 配置向导
    让 Odoo POS 支持廉价小票打印机
  • 原文地址:https://www.cnblogs.com/matthew228/p/1824810.html
Copyright © 2011-2022 走看看