Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Regex / System / Text / RegularExpressions / RegexGroup.cs / 1 / RegexGroup.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// [ Serializable() ] public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// [ Serializable() ] public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StringComparer.cs
- SmiMetaDataProperty.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- WinEventTracker.cs
- CompositionAdorner.cs
- Comparer.cs
- XmlAttributeAttribute.cs
- ThicknessConverter.cs
- OleDbErrorCollection.cs
- SpeakCompletedEventArgs.cs
- SqlUserDefinedTypeAttribute.cs
- ThreadNeutralSemaphore.cs
- DefaultDialogButtons.cs
- ReliableOutputSessionChannel.cs
- DbDataAdapter.cs
- MenuItemStyleCollection.cs
- ListViewDataItem.cs
- ValueTable.cs
- HyperlinkAutomationPeer.cs
- RuleSetBrowserDialog.cs
- UInt32Converter.cs
- SyndicationDeserializer.cs
- DataControlLinkButton.cs
- WindowsProgressbar.cs
- NativeMethods.cs
- InputDevice.cs
- SchemaCollectionPreprocessor.cs
- SqlExpressionNullability.cs
- TTSVoice.cs
- Comparer.cs
- UIElementPropertyUndoUnit.cs
- ControlUtil.cs
- StateDesigner.CommentLayoutGlyph.cs
- FocusWithinProperty.cs
- MsmqBindingFilter.cs
- FunctionImportElement.cs
- AttributeCollection.cs
- ProcessModelInfo.cs
- FormatConvertedBitmap.cs
- XsltContext.cs
- StringWriter.cs
- SubpageParaClient.cs
- XmlNamespaceMapping.cs
- ListBindingConverter.cs
- ServiceReference.cs
- DateTimePicker.cs
- ReflectionTypeLoadException.cs
- SiteIdentityPermission.cs
- SHA384.cs
- QuaternionRotation3D.cs
- LockedHandleGlyph.cs
- ProcessThreadCollection.cs
- ContentPropertyAttribute.cs
- Convert.cs
- DataGridCellEditEndingEventArgs.cs
- XmlEnumAttribute.cs
- DesignerActionService.cs
- LinkLabel.cs
- AssemblyName.cs
- HttpConfigurationSystem.cs
- ExecutedRoutedEventArgs.cs
- __ComObject.cs
- Array.cs
- Configuration.cs
- ListBox.cs
- IsolatedStoragePermission.cs
- DataGridToolTip.cs
- RadioButtonStandardAdapter.cs
- ExtensibleSyndicationObject.cs
- HtmlTableCell.cs
- LayoutManager.cs
- KeyProperty.cs
- CodeArrayCreateExpression.cs
- ActivityCollectionMarkupSerializer.cs
- followingquery.cs
- JsonSerializer.cs
- CodeBlockBuilder.cs
- CommandEventArgs.cs
- EditorZoneBase.cs
- TypeElement.cs
- QilGenerator.cs
- ValidationErrorCollection.cs
- X509Chain.cs
- RoleManagerSection.cs
- IndexOutOfRangeException.cs
- DebugViewWriter.cs
- RoleGroupCollection.cs
- SocketPermission.cs
- DataGridViewButtonColumn.cs
- OdbcTransaction.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- Screen.cs
- WebBrowserSiteBase.cs
- IsolatedStorageFile.cs
- EmptyReadOnlyDictionaryInternal.cs
- DefaultAsyncDataDispatcher.cs
- SessionState.cs
- AudioFormatConverter.cs
- StateBag.cs
- HttpConfigurationSystem.cs