javascript जावास्क्रिप्ट की जगह '' '' के साथ '' ''




xml string (6)

मैं प्रतिस्थापन विधि का प्रयोग करके '' '' स्ट्रिंग के साथ "'" वर्ण को बदलने की कोशिश कर रहा हूं, जैसे:

temp.replace("\'", "''");

लेकिन ऐसा लगता है कि यह कुछ भी नहीं बदल रहा है। मुझे वांछित स्ट्रिंग के साथ वांछित चरित्र को बदलने के लिए कमांड को कैसे लिखना चाहिए (मैं इसे अगले एक्सएमएल में बदलने की कोशिश कर रहा हूँ):

<Module ForceTabs="1">
    <Events>
        <Event Value="onafter_moduleinit_beforedraw()" Type="onafter_moduleinit_beforedraw"/>
    </Events>
    <Section Id="Header" Type="header" Caption="Header" ContainerCSS="background:#C1E0F4;border-bottom:2px groove;margin-bottom:3px;padding:10 3 3 3">
        <Containers>
            <Form Id="Header" Caption="General Details" Source="Request" Layout="Fixed">
                <Layout>
                    <table cellaspacing="0" cellpadding="0">
                        <tr>
                            <td>
                                <ControlRef Id="Origin" ShowCaption="1"/>
                            </td>
                            <td>
                                <ControlRef Id="Type" ShowCaption="1"/>
                            </td>
                            <td>
                                <ControlRef Id="Process" ShowCaption="1"/>
                            </td>
                            <td width="20" align="center">
                                <span class="separator"/>
                            </td>
                            <td>
                                <ControlRef Id="FindBy" ShowCaption="1"/>
                            </td>
                            <td>
                                <ControlRef Id="Find"/>
                            </td>
                            <td>
                                <button width="30" onclick="doFindCustomer()">
                                    <Caption Caption="GO"/>
                                </button>
                            </td>
                        </tr>
                    </table>
                </Layout>
                <Controls>
                    <Control Id="Origin" Caption="Origin" FieldName="Origin" DataType="string" Width="90" CaptionWidth="70" ReadOnly="1" Mandatory="1" Hidden="1"/>
                    <Control Id="Type" Caption="Type" FieldName="Type" DataType="select" Width="60" CaptionWidth="40" ReadOnly="1" Mandatory="1" DefaultValue="Service" Hidden="1">
                        <Member Value="Allert" Caption="Allert"/>
                        <Member Value="Service" Caption="Service"/>
                        <Member Value="Marketing" Caption="Marketing"/>
                    </Control>
                    <Control Id="Process" Caption="Process" FieldName="Process" DataType="string" Width="90" CaptionWidth="70" ReadOnly="1" Mandatory="1" Hidden="1"/>
                    <Control Id="FindBy" Caption="Find:" VCaption="Find By" FieldName="FindBy" DataType="select" Width="90" CaptionWidth="50" ReadOnly="0" Mandatory="0" CaptionCSS="font-weight:bold" DefaultValue="IMTSI">
                        <Member Value="IMTSI" Caption="IMTSI"/>
                        <Member Value="ID" Caption="ID"/>
                    </Control>
                    <Control Id="Find" Caption="Find Value" FieldName="Find" DataType="string" Width="90" CaptionWidth="60" ReadOnly="0" Mandatory="0" CaptionCSS="font-weight:bold"/>
                </Controls>
            </Form>
        </Containers>
    </Section>
    <Section Id="1" Type="page" Caption="Message Details">
        <Containers>
            <Form Id="General" Caption="General Details" Source="Request" Layout="Fixed">
                <Controls>
                    <Control Id="MessageType" Caption="Message Type" Source="Param[@Name = 'MessageType']" FieldName="Value" DataType="select" Width="150" CaptionWidth="120" ReadOnly="1" Mandatory="1" DefaultValue="Allert" Action="handleMessageTypeChange()" BreakAfter="0">
                        <Member Value="SMS" Caption="SMS"/>
                        <Member Value="EMAIL" Caption="EMAIL"/>
                        <Member Value="ATOS" Caption="ATOS"/>
                        <Member Value="SELF SERVICE" Caption="SELF SERVICE"/>
                    </Control>
                    <Control Id="Language" Caption="Language" Source="Param[@Name = 'Language']" FieldName="Value" DataType="string" Width="100" CaptionWidth="90" ReadOnly="1" BreakAfter="1"/>
                    <Control Id="FirstName" Caption="First Name" Source="Param[@Name = 'FirstName']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" BreakAfter="1"/>
                    <Control Id="LastName" Caption="Last Name" Source="Param[@Name = 'LastName']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" BreakAfter="1"/>
                    <Control Id="IMTSI" Caption="IMTSI" Source="Param[@Name = 'IMTSI']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" BreakAfter="1" Mandatory="0"/>
                    <Control Id="Mobile" Caption="Mobile" Source="Param[@Name = 'Mobile']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" BreakAfter="1" Mandatory="1"/>
                    <Control Id="Email" Caption="Email" Source="Param[@Name = 'Email']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" BreakAfter="1" Mandatory="0"/>
                    <Control Id="Subject" Caption="Subject" Source="Param[@Name = 'Subject']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" BreakAfter="1" MaxLen="40" Hidden="1"/>
                    <Control Id="Content" Caption="Content" Source="Param[@Name = 'Content']" FieldName="Value" DataType="longstring" Width="350" CaptionWidth="120" Height="60" BreakAfter="1" MaxLen="50" Mandatory="1" SeparateBefore="1" SeparateAfter="1"/>
                    <Control Id="Sender" Caption="Sender" Source="Param[@Name = 'Sender']" FieldName="Value" DataType="string" Width="350" CaptionWidth="120" ReadOnly="1" BreakAfter="1"/>
                    <Control Id="Priority" Caption="Priority" Source="Param[@Name = 'Priority']" FieldName="Value" DataType="select" Width="350" CaptionWidth="120" BreakAfter="1" DefaultValue="LOW">
                        <Member Value="LOW" Caption="Low" Glyf="../../GUIGenerator_V2/assets/themes/Images/flag_blue.png"/>
                        <Member Value="MED" Caption="Medium" Glyf="../../GUIGenerator_V2/assets/themes/Images/flag_yellow.png"/>
                        <Member Value="HIGH" Caption="High" Glyf="../../GUIGenerator_V2/assets/themes/Images/flag_red.png"/>
                    </Control>
                </Controls>
            </Form>
        </Containers>
    </Section>
</Module>

मुझे एकल से दो सिंगल्स की जगह लेनी चाहिए, मैं इसे "लेकिन"


चाल दूसरे स्ट्रिंग के साथ अन्य उद्धरण चरित्र को उद्धृत कर रहा है:

temp.replace(/'/g, '"');

संपादित करें: बेन ली, रेगेक्स के बारे में सही है, ऊपर अपडेट किया गया। हालांकि, मैं अभी भी इसे इकट्ठा करता हूं कि आप " (एक दोहरे उद्धरण) के साथ प्रतिस्थापित करना चाहते हैं, न '' (दो एकल उद्धरण)।


while (str.indexOf("'") >= 0)
    {
        var newStr = str.replace("'", "\"");
        str = newStr;
    }

आप वास्तव में (\ ') को बदलने की कोशिश कर रहे हैं, न कि केवल एकल उद्धरण चरित्र डबल कोट्स द्वारा सीमांकित स्ट्रिंग में एक सिंगल कोट से बचने की कोई आवश्यकता नहीं है, क्योंकि वे स्ट्रिंग के अंत को नहीं दर्शाते हैं ...

प्रतिस्थापन केवल पहले बोली का मिलान किया जाएगा, जब तक कि आप हमारे पुराने दोस्त रेगेक्स का उपयोग नहीं कर रहे हों डाउनगेड रेगुलर एक्सप्रेशंस होने धीमे होते हैं मैंने यह देखने के लिए जाँच नहीं की है कि कौन सा तेज है, लेकिन आप विभाजन का उपयोग करने का प्रयास कर सकते हैं:

var chunks = temp.split("'").join("''");

test = "string cont'aining single 'quotes".split("'").join("''");//in firebug console
//returns "string cont''aining single ''quotes" as expected

तो यह मूलतः 2 एकल उद्धरण वर्णों के साथ एकल उद्धरण चरित्र बदल रहा है, है ना? यदि ऐसा मामला है तो आप वैश्विक ध्वज का उपयोग करना चाहते हैं, योर रेगुलर एक्सप्रेशन के अंत में g और इसे आपके मान (अस्थायी)

temp = temp.replace(/'/g,"''");

क्या आपने यह कोशिश की है?

temp.replace("'", "''");

आपका कोड सिर्फ एक उदाहरण (पहले पाता है) को बदल देता है आपको सभी उदाहरणों को बदलना चाहिए आप ऐसा नियमित अभिव्यक्ति का उपयोग करके कर सकते हैं और अंत में "ग्लोबल सर्च" नाम का एक g फ्लैग जोड़ सकते हैं। इस कदर:

temp.replace(/'/g, "''")

यहां एक काम उदाहरण है: http://jsfiddle.net/Q2Uyv/ ("इन" बॉक्स में कुछ लिखें और "कन्वर्ट" पर क्लिक करें)।

यदि आप वास्तव में एकल उद्धरणों को दोहरे उद्धरण (केवल एकल उद्धरणों के दोगुनी अनुक्रम के बजाय) के साथ बदलने की कोशिश कर रहे हैं, तो ऐसा करें:

temp.replace(/'/g, '"')






replace